專利名稱:從mmc/sd設(shè)備引導(dǎo)主機(jī)設(shè)備的方法,可從mmc/sd設(shè)備引導(dǎo)的主機(jī)設(shè)備以及可以從其引導(dǎo) ...的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及存儲設(shè)備,尤其涉及存儲卡的接口。更具體地,本發(fā) 明涉及多媒體卡(MMC)或安全數(shù)字(SD)卡。存在嵌入式大容量 存儲器開始通過已知存儲卡電接口引入的趨勢。即,期望能夠使用 類似于大容量存儲器的存儲卡。至今為止,這種接口的開發(fā)和改進(jìn) 已集中于可移除存儲卡。存在一些未解決的問題需要處理,使得接 口也較好地適于嵌入式存儲器。
本發(fā)明還對之前已知的串行協(xié)議存儲卡接口 (MMC IF)引入了 引導(dǎo)機(jī)制。方法可以基于相同信號狀態(tài)(如在現(xiàn)有技術(shù)中)或者可 以使用已經(jīng)存在的存儲卡接口的串行協(xié)議。
背景技術(shù):
MMC 規(guī)范的簡略規(guī)范可以從因特網(wǎng)站點(diǎn) http:〃www.mmca.org/compliance/buv spec/MMCA System—Summary V41.pdfT載。
用于具有不同電接口的現(xiàn)有嵌入式大容量存儲器組件的引導(dǎo)定 義是已知的。這些已知組件例如是NAND、 OneNAND和MDOC大 容量存儲器。所有這些所共同的是它們在加電的確定階段期間使用 某信號狀態(tài)(例如為引導(dǎo)保留的單獨(dú)管腳)以向存儲器組件指示其 將取數(shù)據(jù)的第一扇區(qū)(典型地512B)到10緩沖器。作為現(xiàn)有技術(shù) 引用的M-systems DiskOnChip (DOC)的才支術(shù)數(shù)據(jù)表可以在地址 http:〃www.m-svstems.com/NR/rdonlvres/85A96312-0130-47AD-A22C-CB533E28EE7A/0/DOC G3 512Mb 1Gb Rev20.pdf從因特網(wǎng)獲取。
存在針對具有不同電接口的其它現(xiàn)有嵌入式大容量存儲器組件
的其它已知引導(dǎo)定義。這些種類的組件例如是NAND(參見
http://www. samsung.com/Products/Semiconductor/NAND/index.ht
ml)和 OneNAND (參見
http://www. samsung.com/Products/Semiconductor/OneNAND/index.ht
ml)MDOC ( 參 見
http://www.m-svstems.com/site/en-US/Products/DiskOnChb/DiskOnCh 1eZ)大容量存儲器。所有這些所共同的是它們在加電的確定階段期
間使用某信號狀態(tài)(例如為引導(dǎo)保留的單獨(dú)管腳)以向存儲器組件
指示其將取數(shù)據(jù)的第一扇區(qū)(典型地512B)到IO緩沖器。
現(xiàn)有MMC和SD存儲卡可以提供執(zhí)行例如熱交換操作的能力, 但是還期望擴(kuò)展這些存儲卡的能力以能夠提供更寬泛的功能性。
為了改進(jìn)存儲卡的可用性,期望使用戶能夠使用存儲卡作為可引 導(dǎo)介質(zhì)。該特征將實(shí)現(xiàn)例如MMC (多媒體卡)和SD (安全數(shù)字) 卡的更廣泛使用,不僅在例如移動蜂窩電話或照相機(jī)的自引導(dǎo)設(shè)備 中,而且作為可引導(dǎo)存儲介質(zhì)用于例如膝上型和掌上型計(jì)算機(jī)。
目前,在MMC卡和SD卡領(lǐng)域,在主機(jī)設(shè)備的引導(dǎo)期間訪問第 一 (扇區(qū))數(shù)據(jù)的唯一方法是隨著初始化卡的整個過程,讀/寫寄存 器并執(zhí)行到已知地址的正常讀訪問。
現(xiàn)有MMC和SD存儲卡接口協(xié)議的問題在于不存在定義的有效 引導(dǎo)機(jī)制。在主機(jī)設(shè)備的引導(dǎo)期間訪問第一 (扇區(qū))數(shù)據(jù)的唯一方 法是隨著初始化卡的整個過程,讀/寫寄存器并執(zhí)行到已知地址的正 常讀訪問。這意味著通過未配置用于自動執(zhí)行到引導(dǎo)地址的正常讀 訪問(例如因?yàn)橐x取的引導(dǎo)數(shù)據(jù)的地址是不知道的)的設(shè)備執(zhí)行 引導(dǎo)過程實(shí)際上是不可能的。
還期望實(shí)現(xiàn)更寬泛的可用性,而不必須改變電接口或形狀因子, 即不用在加電的確定階段期間使用為引導(dǎo)保留的附加單獨(dú)管腳的信 號狀態(tài)以向存儲器組件指示其將取數(shù)據(jù)的確定扇區(qū)到1/0緩沖器。
因此,本發(fā)明解決的問題涉及擴(kuò)展現(xiàn)有MMC和SD卡的能力, 而不改變存儲卡的許多特性并且還能夠保證完全向下兼容性。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個方面,將引導(dǎo)機(jī)制引入在MMC卡/設(shè)備和SD 卡/設(shè)備中使用的MMCIF的已知串行協(xié)議存儲卡接口。該方法可以 基于相同信號狀態(tài)(如現(xiàn)有技術(shù)中)或者可以使用已經(jīng)存在的存儲 卡接口的串行協(xié)議。
根據(jù)本發(fā)明的第一方面,提供了用于經(jīng)由MMC/SD接口從外圍 設(shè)備引導(dǎo)主機(jī)設(shè)備的方法。MMC/SD接口包括電源端子、具有數(shù)據(jù) 總線端子的數(shù)據(jù)總線、具有時鐘(CLK)端子的時鐘(CLK)線以 及具有命令(CMD)端子的命令(CMD)線。根據(jù)本發(fā)明,該方法 包括將電源(以及地)提供給所述電源端子,并且在加電期間將(主 機(jī)設(shè)備的)所述MMC/SD接口的CMD端子設(shè)置為低(信號狀態(tài)), 隨后針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
在MMC/SD卡或設(shè)備的標(biāo)準(zhǔn)加電過程中,主機(jī)設(shè)備在加電期間 將所述MMC/SD接口的CMD端子設(shè)置為高。即,該實(shí)施方式使用 現(xiàn)有信號來在加電期間指示引導(dǎo)。然而,其旨在執(zhí)行引導(dǎo)過程是由 主機(jī)設(shè)備使用的接口中"不期望的,,信號。目前,在MMC/SD規(guī)范 中未定義在MMC/SD卡或設(shè)備的加電過程期間如果CMD線設(shè)置為 低會發(fā)生什么。
主機(jī)設(shè)備的所述MMC/SD接口的CMD端子在該周期期間可以 被設(shè)置為"低"信號狀態(tài);傳統(tǒng)上經(jīng)由CMD先發(fā)送"CMD0"命令。
"CMD0"命令是加電過程的命令,GO—IDLE_STATE ( CMD0 )。 初始化期間使用的下一命令是CMD1命令,SEND—OP—COND (發(fā)送 操作條件),以識別具有MMC/SD接口的外圍設(shè)備的操作電壓范圍。 初始化過程的其它命令是CMD2和CMD3命令,其中CMD2 (ALL—SEND—CID )請求唯 一 卡標(biāo)識號(CID ),命令CMD3 (SET—RELATIVE_ADDR)設(shè)置相對卡地址(RCA),其短于CID, 用于加速數(shù)據(jù)交換。
在本發(fā)明的示范性實(shí)施方式中,該方法進(jìn)一步包括從所述主機(jī)設(shè) 備向所述MMC/SD接口的所述時鐘端子發(fā)送時鐘信號,其中在24
個到148個之間,優(yōu)選地在60個和100個之間,以及最優(yōu)選地起始 74個或至少起始74個初始化時鐘周期的傳llr期間,所述MMC/SD 接口的所述C MD端子在加電過程之前或期間被設(shè)置為低。
在本發(fā)明的另一示范性實(shí)施方式中,所述方法進(jìn)一步包括從所述 主機(jī)設(shè)備向所述時鐘端子發(fā)送時鐘信號,只要卡已經(jīng)經(jīng)由所述數(shù)據(jù) 總線發(fā)送了數(shù)據(jù),例如,主機(jī)設(shè)備保持時鐘,直到傳輸了卡必須發(fā) 送的所有數(shù)據(jù)。
在本發(fā)明的方法的又 一 示范性實(shí)施方式中,主機(jī)設(shè)備設(shè)置數(shù)據(jù)總 線端子為低,以指示將用于數(shù)據(jù)傳輸?shù)臄?shù)據(jù)總線的寬度。在該實(shí)施 方式中,主機(jī)設(shè)備可以通過例如MMC/SD卡的MMC/SD設(shè)備向具有 MMC/SD接口的外圍設(shè)備信號發(fā)送將用于引導(dǎo)數(shù)據(jù)的數(shù)據(jù)傳輸?shù)臄?shù) 據(jù)線/端子的數(shù)量。在現(xiàn)有規(guī)范中,選擇表達(dá)MMC/SD設(shè)備來表示 MMC/SD存儲卡以及嵌入式設(shè)備,例如具有MMC/SD接口的嵌入式 存儲設(shè)備。
例如設(shè)想僅將第一數(shù)據(jù)總線端子(Dat0)設(shè)置為低以向具有 MMC/SD接口的外圍設(shè)備指示僅該端子(單個信道多路)將用于傳 輸引導(dǎo)數(shù)據(jù)到主機(jī)設(shè)備。
即,將用于傳輸引導(dǎo)數(shù)據(jù)到主機(jī)設(shè)備的數(shù)據(jù)總線線路的各數(shù)量拉 為低連同以CMD線低指示引導(dǎo)請求。
通過這些實(shí)現(xiàn),不再需要在用于請求例如引導(dǎo)數(shù)據(jù)的最初讀訪問 之前完全初始化組件和設(shè)置寄存器。
根據(jù)本發(fā)明的另一方面,提供了一種用于從具有MMC/SD接口 的外圍設(shè)備引導(dǎo)的方法。該方法主要涉及引導(dǎo)過程的外圍設(shè)備側(cè)。 外圍設(shè)備包括MMC/SD接口 ,其具有電源端子、具有數(shù)據(jù)總線端子 的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有CMD端子的CMD線。 本發(fā)明的該方面的方法包括在所述MMC/S D接口的所述電源端子處 接收電源(以及地),在加電之前或其期間在CMD端子處接收^f氐信 號(狀態(tài)),以及經(jīng)由數(shù)據(jù)總線發(fā)送預(yù)定存儲區(qū)的起始數(shù)據(jù),開始 于起始數(shù)據(jù)幀的起始位。
在加電期間,具有MMC/SD接口的外圍設(shè)備在命令線處檢測"不 期望的"信號狀態(tài)以及從預(yù)定數(shù)據(jù)文件開始引導(dǎo)數(shù)據(jù)的傳輸、具有 MMC/SD接口的外圍設(shè)備的存儲模塊/核心的預(yù)定存儲區(qū)或已定義 "引導(dǎo)數(shù)據(jù)扇區(qū)"。上述用于引導(dǎo)主機(jī)設(shè)備的方法和用于從具有 MMC/SD接口的外圍設(shè)備引導(dǎo)的方法的結(jié)合互相完成引導(dǎo)過程。設(shè) 想還撰寫系統(tǒng)權(quán)利要求例如包括兩個所涉及設(shè)備(例如,具有 MMC/SD接口的主機(jī)設(shè)備和外圍設(shè)備)的所有步驟。
在示范性實(shí)施方式中,在24個到148個初始化時鐘周期之間, 優(yōu)選地在60個和100個初始化時鐘周期之間,以及最優(yōu)選地起始74 個或至少起始74個初始化時鐘周期的傳輸期間,在加電期間如果外 圍設(shè)備在所述MMC/SD接口的所述CMD端子處接收低信號則僅發(fā) 送經(jīng)由數(shù)據(jù)總線的預(yù)定存儲區(qū)的所述起始數(shù)據(jù)。也設(shè)想選擇預(yù)定文 件代替用于傳輸引導(dǎo)數(shù)據(jù)的預(yù)定存儲區(qū)。
在本發(fā)明的方法的示范性實(shí)施方式中,所述方法進(jìn)一步包括在數(shù) 據(jù)總線端子接收低信號,指示將用于數(shù)據(jù)傳輸?shù)臄?shù)據(jù)總線的寬度, 以及使用所指示的數(shù)據(jù)總線寬度發(fā)送所述數(shù)據(jù)。
如果例如確定最初兩個數(shù)據(jù)總線端子(Dat0和Datl )設(shè)置為"低" (信號狀態(tài)),則具有MMC/SD接口的外圍設(shè)備僅使用這兩個端子 (兩個信道多路)用于傳輸引導(dǎo)數(shù)據(jù)到主機(jī)設(shè)備。
即,將用于傳輸引導(dǎo)數(shù)據(jù)到主機(jī)設(shè)備的數(shù)據(jù)總線線路的各數(shù)量 "拉到低"連同CMD線低(指示引導(dǎo)請求)。
根據(jù)本發(fā)明的另一方面,提供了用于從具有MMC/SD接口的外 圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方法。主機(jī)設(shè)備具有MMC/SD接口 ,其具有 電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線 以及具有CMD端子的CMD線。方法包括在初始化過程期間從所述 主機(jī)設(shè)備經(jīng)由所述MMC/SD接口發(fā)送用于引導(dǎo)請求的自變量到所述 外圍設(shè)備,所述引導(dǎo)請求包括命令,發(fā)送時鐘(CLK)信號到時鐘 (CLK)線,以及針對數(shù)據(jù)傳輸?shù)钠鹗嘉?以及其自己的數(shù)據(jù))監(jiān) 控數(shù)據(jù)總線的端子。
該實(shí)現(xiàn)基于現(xiàn)有串行協(xié)議命令的使用。即,"不期望的"信號協(xié) 議命令發(fā)送到接口以指示主機(jī)設(shè)備旨在執(zhí)行引導(dǎo)過程(通過來自具
有MMC/SD接口的外圍設(shè)備的數(shù)據(jù))。這可以例如通過以下步驟實(shí) 現(xiàn)從主機(jī)經(jīng)由MMC/SD接口發(fā)送包括復(fù)位命令的引導(dǎo)請求的自變 量到外圍設(shè)備,隨后針對數(shù)據(jù)傳輸/數(shù)據(jù)幀的起始位監(jiān)控數(shù)據(jù)總線端 子。在初始化過程期間,例如在CMD1階|殳(例如,在卡的加電之 后具有MMC/SD接口的外圍設(shè)備的初始化)期間或緊接其后,發(fā)送 用于引導(dǎo)請求的自變量。也設(shè)想在命令幀內(nèi)部發(fā)送內(nèi)部引導(dǎo)請求(例 如,在CMDO命令內(nèi)部,如在MMC/SD規(guī)范中定義的)。
這可以通過修改例如用于CMD0的自變量來實(shí)現(xiàn),其當(dāng)前是 0X00000000。當(dāng)值0X00000001用作發(fā)送到MMC/SD接口的第 一 自 變量時,這可以指示引導(dǎo)請求。
在本發(fā)明的示范性實(shí)施方式中,該方法進(jìn)一步包括從所述主機(jī)設(shè) 備發(fā)送附加自變量連同用于引導(dǎo)請求的自變量到MMC/SD接口 ,該 附加自變量指示涉及選自將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量以及 要使用的時鐘頻率/定時模式的組的引導(dǎo)序列的參數(shù)等。除了引導(dǎo)請 求之外,用于數(shù)據(jù)總線寬度的自變量例如可以在命令幀內(nèi)部傳輸(例 如,在CMDO的命令幀內(nèi)部)。
該實(shí)施方式使得主機(jī)設(shè)備能夠定義用于其它自變量的附加參數(shù), 涉及在引導(dǎo)請求或引導(dǎo)數(shù)據(jù)傳輸過程中(或者與之有關(guān))的引導(dǎo)序 列/引導(dǎo)過程。
在本發(fā)明的其它方面中已經(jīng)描述了 ,將用于引導(dǎo)數(shù)據(jù)的傳輸?shù)目?線寬度還可以由數(shù)據(jù)總線端子的數(shù)量來指示,其可以(在引導(dǎo)請求 自變量的傳輸之前、期間或之后)被設(shè)置為低。也可能使用數(shù)據(jù)總 線端子的數(shù)量,其被設(shè)置為"低"信號狀態(tài),作為將用于傳輸?shù)臄?shù) 據(jù)總線端子的數(shù)量的指示。
當(dāng)使用用于Dat0到Dat7端子的二進(jìn)制編碼計(jì)數(shù)算法時,使用僅 4個例如Dat0到Dat3來定義端子用于確定可以用于傳輸引導(dǎo)序列的 所有可能數(shù)量端子將是足夠的。當(dāng)使用二進(jìn)制計(jì)數(shù)算法來定義將用 于傳輸?shù)?W個數(shù)據(jù)端子時,僅使用三個Dat端子來定義8 (以及到 64)個尚未定義的Dat端子是足夠的,否則當(dāng)N定義例如為(二進(jìn) 制編碼數(shù)-1 )時,用于單個線路傳輸?shù)腄at端子將編碼為設(shè)置為"高" 的所有端子,其進(jìn)而根本不能解釋為總線寬度(因?yàn)橐龑?dǎo)過程期間 的標(biāo)準(zhǔn)信號是設(shè)置為"高,,的所有數(shù)據(jù)端子)。也可以設(shè)想使用初 始化過程期間設(shè)置為"低"的Dat線/端子的僅一個作為用于引導(dǎo)請 求的指示(當(dāng)或不當(dāng)其它的將總線寬度編碼為頻率或其它參數(shù))。
(技術(shù)人員將知道,在本實(shí)現(xiàn)中,低信號條件將根據(jù)各自正或負(fù) 的計(jì)數(shù)方案被解釋為二進(jìn)制"0"或二進(jìn)制"1",并且不需要清楚 指明二進(jìn)制數(shù)是否從Dat0到Dat3計(jì)數(shù)或者僅在偶數(shù)或奇數(shù)端子中 編碼或者從頂?shù)降?Dat7到Dat4)等是無關(guān)緊要的。)
該實(shí)現(xiàn)留下4到5個自由Dat端子,其進(jìn)而可以用于編碼附加引 導(dǎo)周期參數(shù),例如將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量,以及要使 用的時鐘頻率/定時模式等。
在啟動期間數(shù)據(jù)總線信號的該實(shí)現(xiàn)可以在本發(fā)明的方法或設(shè)備 的所有以上和以下實(shí)現(xiàn)中實(shí)現(xiàn)。
根據(jù)本發(fā)明的又一方面,提供了用于具有MMC/SD接口的外圍 設(shè)備的上述引導(dǎo)數(shù)據(jù)提供過程。該方法是用于從外圍設(shè)備引導(dǎo)主機(jī) 設(shè)備,該外圍設(shè)備具有MMC/SD接口 ,其具有電源端子、具有數(shù)據(jù) 總線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有CMD端子的 CMD線。該方法包括在具有MMC/SD接口的外圍設(shè)備的初始化過 程期間在所述外圍設(shè)備的所述MMC/SD接口處接收來自所述主機(jī)i殳 備的用于引導(dǎo)請求的自變量,在數(shù)據(jù)總線處接收時鐘信號,以及如 果引導(dǎo)數(shù)據(jù)存儲在外圍設(shè)備中則經(jīng)由所述MMC/SD接口發(fā)送開始于 數(shù)據(jù)傳輸?shù)钠鹗嘉坏臄?shù)據(jù)到所述主機(jī)設(shè)備。
該實(shí)現(xiàn)代表使用例如現(xiàn)有串行協(xié)議(以及也可以和復(fù)位命令), 因?yàn)樵诮涌谔幗邮盏?不期望的,,信號協(xié)議命令(其被接收代替通
常期望的CMD0命令)由外圍設(shè)備(控制器)解釋為用于引導(dǎo)數(shù)據(jù) 的傳輸?shù)恼埱蟆H缫呀?jīng)公開的,在主機(jī)側(cè)過程中,所述用于引導(dǎo)請 求的自變量可以例如包括在所述MMC/SD接口的復(fù)位命令(其可以 包含在修改的CMD0命令中,指示引導(dǎo)請求)。在卡接收例如具有 自變量的復(fù)位命令CMD0之后,其將取起始數(shù)據(jù)到10緩沖器,并且 開始發(fā)送存儲的或獲取的引導(dǎo)數(shù)據(jù)到數(shù)據(jù)總線(至少在時鐘端子處 接收時鐘信號時)。
在本發(fā)明的示范性實(shí)施方式中,該方法進(jìn) 一 步包括從所述主機(jī)設(shè) 備接收附加自變量連同用于引導(dǎo)請求的自變量,該附加自變量指示 涉及選自將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量以及將用于數(shù)據(jù)傳輸 的時鐘頻率/定時模式的組的引導(dǎo)序列的參數(shù),以及使用所述指示的 參數(shù)用于經(jīng)由所述數(shù)據(jù)總線傳輸數(shù)據(jù)到所述主機(jī)設(shè)備。這可以在引 導(dǎo)請求中直接實(shí)現(xiàn)或者可以通過在Dat0到Dat7端子處檢測的各信 號輸入/狀態(tài)指示。
根據(jù)本發(fā)明的另一方面,提供了用于從具有MMC/SD接口的外 圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方法。方法包括開始具有MMC/SD接口的外 圍設(shè)備的標(biāo)準(zhǔn)初始化數(shù)據(jù)交換,直到達(dá)到具有MMC/SD接口的外圍 設(shè)備的備用狀態(tài),隨后從所述備用狀態(tài)執(zhí)行所述主機(jī)設(shè)備和所述外 圍設(shè)備之間的數(shù)據(jù)交換以搜索數(shù)據(jù)總線中的組件中的有效引導(dǎo)。
在引導(dǎo)請求中,也可以在初始化序列的較后階段中給出自變量, 通過或在(在卡進(jìn)入備用狀態(tài)前正常初始化的)CMDO、 CMD1、 CMD2、 CMD3命令之后。在具有MMC/SD接口的外圍設(shè)備達(dá)到備 用狀態(tài)之后,主機(jī)可以逐一檢查總線中的組件以搜索有效引導(dǎo)碼。
該方面在主機(jī)設(shè)備開始應(yīng)用以有效搜索引導(dǎo)數(shù)據(jù)之前使用具有 MMC/SD接口的外圍設(shè)備的傳統(tǒng)初始化過程。該實(shí)現(xiàn)要求主機(jī)設(shè)備 能夠執(zhí)行整個初始化過程以及甚至在未引導(dǎo)條件下存儲在具有 MMC/SD接口的外圍設(shè)備上的用于引導(dǎo)數(shù)據(jù)的搜索/加載例程。其為 至少要求用于具有MMC/SD接口的外圍設(shè)備的初始化硬編碼算法和 用于引導(dǎo)數(shù)據(jù)搜索/加載的算法的設(shè)備。
該實(shí)現(xiàn)具有最顯著的優(yōu)點(diǎn)是可以通過各自修改的主機(jī)設(shè)備和完 全傳統(tǒng)的具有MMC/SD接口的外圍設(shè)備來執(zhí)行。
根據(jù)本發(fā)明的另一方面,提供了用于從具有MMC/SD接口的外 圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方法。主機(jī)設(shè)備經(jīng)由具有數(shù)據(jù)總線和CMD端 子的MMC/SD接口連接到外圍設(shè)備。附加地,所述外圍設(shè)備在具有 MMC/SD接口的所述外圍設(shè)備的操作條件寄存器中設(shè)置有用于引導(dǎo) 請求的附加自變量。在本發(fā)明的該方面中,所述方法包括執(zhí)行具有 MMC/SD 4妄口的外圍設(shè)備的標(biāo)準(zhǔn)初始化過程,以及在終止所述初始 化過程之后,發(fā)送用于引導(dǎo)請求的自變量到所述MMC/SD接口 ,以 及針對將經(jīng)由所述MMC/SD接口從外圍設(shè)備接收的引導(dǎo)數(shù)據(jù)監(jiān)控數(shù) 據(jù)總線。
本發(fā)明的該實(shí)施方式可以在具有MMC/SD接口的外圍設(shè)備的初 始化過程的"CMD1"(或較高的后面的CMD號)期間執(zhí)行。即, 引導(dǎo)數(shù)據(jù)的傳輸可以隨著外圍設(shè)備初始化的初始步驟后啟動。如在 上述情況中,該方法要求在操作條件寄存器處的改變,從而要求具 有MMC/SD接口的外圍設(shè)備本身的改變。其進(jìn)而限定不可能更新現(xiàn) 有(主機(jī)設(shè)備或)具有MMC/SD接口的外圍設(shè)備以能夠執(zhí)行該引導(dǎo) 數(shù)據(jù)傳輸。
如在本發(fā)明的上述情況中,上述方法還包括在外圍設(shè)備側(cè)的成對 物。在本發(fā)明的該實(shí)施方式中,提供了用于從具有MMC/SD接口的 外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方法。如在上述情況中,所述外圍設(shè)備設(shè) 置有具有數(shù)據(jù)總線和CMD端子的MMC/SD接口 。具有MMC/SD接 口的外圍設(shè)備還在所述外圍設(shè)備的操作條件寄存器中設(shè)置有用于引 導(dǎo)請求的附加自變量。本發(fā)明的該實(shí)施方式包括執(zhí)行具有MMC/SD 接口的外圍設(shè)備的初始化過程,以及在終止所述初始化過程之后; 在外圍設(shè)備處接收用于引導(dǎo)請求的自變量;以及如果所述外圍設(shè)備 經(jīng)由所述MMC/SD接口到所述主機(jī)設(shè)備,則獲取和發(fā)送來自存儲模 塊的引導(dǎo)數(shù)據(jù)。
根據(jù)本發(fā)明的另一方面,提供了一種用于執(zhí)行從具有MMC/SD 接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的前述方法的可從服務(wù)器下載的計(jì)算 機(jī)程序產(chǎn)品。該計(jì)算機(jī)程序包括程序代碼裝置,用于當(dāng)所述程序在
主機(jī)設(shè)備、具有MMC/SD接口的外圍設(shè)備或內(nèi)插有具有MMC/SD 接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)上運(yùn)行時執(zhí)行前述方法的所有步驟。
根據(jù)本發(fā)明的又一方面,提供了計(jì)算機(jī)程序產(chǎn)品,包括存儲在計(jì) 算機(jī)可讀介質(zhì)上的程序代碼裝置,用于當(dāng)所述程序產(chǎn)品在主機(jī)設(shè)備、 具有MMC/SD接口的外圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍 設(shè)備的主機(jī)設(shè)備的系統(tǒng)上運(yùn)行時,執(zhí)行能夠從具有MMC/SD接口的 外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的前述方法。
根據(jù)本發(fā)明的另一方面,提供了計(jì)算機(jī)數(shù)據(jù)信號。計(jì)算機(jī)數(shù)據(jù)信 號實(shí)施在載波中,并且表示一程序,該程序使得計(jì)算機(jī)在所述程序 產(chǎn)品在主機(jī)i殳備、具有MMC/SD接口的外圍i殳備或內(nèi)插有具有 MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)上運(yùn)行時,執(zhí)行從具有 MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的前述方法的步驟。
優(yōu)選地,計(jì)算機(jī)程序/計(jì)算機(jī)程序產(chǎn)品分布在主機(jī)設(shè)備和具有 MMC/SD接口的外圍設(shè)備的系統(tǒng)的不同部分中,例如計(jì)算機(jī)程序的 一部分位于主機(jī)設(shè)備中,以及一部分計(jì)算機(jī)程序位于具有MMC/SD 接口的外圍設(shè)備中。因此,計(jì)算機(jī)程序和計(jì)算機(jī)程序設(shè)備必須在能 力和源代碼上不同。
根據(jù)本發(fā)明的又一方面,提供了配置用于從具有MMC/SD接口 的外圍設(shè)備被引導(dǎo)的可引導(dǎo)主機(jī)設(shè)備。該主機(jī)設(shè)備包括內(nèi)部或外部 電源,連接到所述電源的處理器,以及連接到所述處理器和連接到 所述電源的MMC/SD接口 。 MMC/SD接口包括電源端子、具有數(shù)據(jù) 總線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有CMD端子的 CMD線。該主機(jī)設(shè)備配置用于向所述MMC/SD接口的端子提供電 源,在加電期間將所述MMC/SD接口的CMD端子設(shè)置為低(信號 狀態(tài)),以及針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
本發(fā)明的該方面主要涉及能夠執(zhí)行說明書前面部分中公開的引 導(dǎo)過程的主機(jī)設(shè)備。處理器可以設(shè)置有主存儲器并且可以有必要執(zhí) 行引導(dǎo)過程。
基本上,設(shè)備排除在MMC/SD接口的命令端子處的不期望的信 號狀態(tài)。MMC/SD接口的命令線/端子可以被設(shè)置為低(代替當(dāng)前的 上拉)以在初始化期間指示引導(dǎo)請求。即,本發(fā)明的原理在于在初 始化過程期間使用(已知或新的)信號作為"不期望的"輸入以用 信號通知主機(jī)設(shè)備實(shí)際上請求引導(dǎo)數(shù)據(jù)。
在可引導(dǎo)主機(jī)設(shè)備的示范性實(shí)施方式中,所述處理器配置用于從 所述主機(jī)設(shè)備發(fā)送時鐘信號到所述MMC/SD接口的所述數(shù)據(jù)總線端 子,以及在24個到148個初始化時鐘周期之間,優(yōu)選地在60個和 100個初始化時鐘周期之間,以及最優(yōu)選地74個初始化時鐘周期的 傳輸時,在加電過程期間將所述MMC/SD 4妻口的CMD端子設(shè)置為 低。在該實(shí)施方式中,主機(jī)設(shè)備使用不同的"不期望的信號"以指 示引導(dǎo)數(shù)據(jù)請求。該實(shí)施方式要求具有MMC/SD接口的各外圍設(shè)備 能夠在加電/初始化過程期間在時鐘端子識別時鐘信號。還設(shè)想使用 發(fā)送到MMC/SD接口的時鐘信號的數(shù)量作為用于編碼例如要使用的 數(shù)據(jù)總線的寬度或?qū)⒂糜谝龑?dǎo)數(shù)據(jù)傳輸?shù)念l率的參數(shù)。
在本發(fā)明的主機(jī)設(shè)備的另一示范性實(shí)施方式中,所述處理器進(jìn)一 步配置用于只要卡開始經(jīng)由所述數(shù)據(jù)總線發(fā)送起始數(shù)據(jù)就從所述主 機(jī)設(shè)備發(fā)送時鐘信號到所述MMC/SD接口的所述數(shù)據(jù)總線端子。即, 主機(jī)配置用于使時鐘端子保持產(chǎn)生時鐘信號,直到數(shù)據(jù)傳輸?shù)拈_始 可以從起始數(shù)據(jù)幀的起始位的接收被主機(jī)檢測到或者直到所有引導(dǎo) 數(shù)據(jù)被傳輸?shù)街鳈C(jī)設(shè)備。
在本發(fā)明的又一示范性實(shí)施方式中,所述處理器配置用于將數(shù)據(jù) 總線端子設(shè)置為低,以指示將由插入所述MMC/SD接口的具有 MMC/SD接口的外圍設(shè)備用于傳輸?shù)臄?shù)據(jù)總線的寬度。這可以通過 配置用于設(shè)置端子Dat0到Dat7為低的處理器來實(shí)現(xiàn),其將用于傳 輸引導(dǎo)數(shù)據(jù)。還可以設(shè)想實(shí)現(xiàn)反向方法以設(shè)置將用于引導(dǎo)數(shù)據(jù)傳輸 的所有Dat0-7端子為高以指示將使用8位總線寬度。(在這種情況 下,還設(shè)想使用配置用于使用在本說明書的方法部分中指示的編碼 方案之一的主機(jī)設(shè)備或具有MMC/SD接口的外圍設(shè)備。)
根據(jù)本發(fā)明的另一方面,提供了具有MMC/SD接口的外圍設(shè)備, 其配置用于引導(dǎo)可引導(dǎo)主機(jī)設(shè)備(其進(jìn)而配置用于從具有MMC/SD 接口的外圍設(shè)備被引導(dǎo))。根據(jù)本發(fā)明,所述外圍設(shè)備包括MMC/SD 接口 ,連接到所述MMC/SD接口的外圍設(shè)備控制器,以及連接到所 述外圍設(shè)備控制器的存儲模塊。如MMC/SD規(guī)范中定義的,MMC/SD 接口設(shè)置有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有時鐘端 子的時鐘線以及具有CMD端子的CMD線。具有MMC/SD接口的 外圍設(shè)備的特征在于,所述外圍設(shè)備控制器配置用于當(dāng)在外圍設(shè)備 的所述MMC/SD接口的端子處接收電源,以及在加電期間在所述 MMC/SD接口的CMD端子處接收低信號時,經(jīng)由數(shù)據(jù)總線發(fā)送預(yù) 定存儲區(qū)的起始數(shù)據(jù),開始于起始數(shù)據(jù)幀的起始位。在具有MMC/SD 接口的外圍設(shè)備中,所述外圍設(shè)備控制器連接到所述MMC/SD接口 以及連接到所述存儲模塊。
還設(shè)想設(shè)備(控制器)配置用于自動選擇用于傳輸引導(dǎo)數(shù)據(jù)的存 儲模塊中的預(yù)定文件。應(yīng)該清楚,加電過程還包括在電源端子處電 源的提供/檢測以及提供接地到接地端子(作為MMC/SD接口的電源 端子的一部分)。
在本發(fā)明的示范性實(shí)施方式中,具有MMC/SD接口的所述外圍 設(shè)備(控制器)進(jìn)一步配置用于在24個到148個初始化時鐘周期之 間,優(yōu)選地在60個和100個初始化時鐘周期之間,以及最優(yōu)選地74 個初始化時鐘周期的傳輸期間,僅當(dāng)在加電過程之前或期間在所述 MMC/SD接口的所述CMD端子處接收低信號時,經(jīng)由數(shù)據(jù)總線發(fā) 送預(yù)定存儲區(qū)的所述初始數(shù)據(jù)。
在該實(shí)施方式中,MMC/SD卡必須能夠?qū)υ诔跏蓟^程期間接 收的時鐘周期的數(shù)量進(jìn)行計(jì)數(shù)以識別來自主機(jī)設(shè)備的接收的/指示的 引導(dǎo)請求(其要求具有MMC/SD接口的外圍設(shè)備的由此修改的設(shè) 計(jì))。
在本發(fā)明的另 一示范性實(shí)施方式中,所述外圍設(shè)備控制器進(jìn)一步 配置用于在所述MMC/SD接口的數(shù)據(jù)總線端子處接收低信號,指示
將用于傳輸?shù)臄?shù)據(jù)總線的寬度,以及使用所指示的數(shù)據(jù)總線寬度發(fā)
送所述^t據(jù)。該實(shí)施方式考慮為側(cè)重MMC卡,其能夠在啟動過程 期間識別在Dat端子(0-2, 0-3或0-7)的信號狀態(tài)以從該信號獲取 將用于傳輸引導(dǎo)信號的總線寬度。還設(shè)想以能夠識別例如被二進(jìn)制 編碼的總線寬度數(shù)據(jù)的方式配置具有MMC/SD接口的外圍設(shè)備。
即,本發(fā)明的該實(shí)施方式方面的具有MMC/SD接口的外圍i殳備 能夠在加電過程期間檢查和識別CMD信號線的信號狀態(tài),以及最后 在更復(fù)雜的實(shí)施方式中,還有CLK和總線線路的信號狀態(tài)(或脈沖 數(shù)量)來識別引導(dǎo)請求。(例如參見設(shè)計(jì)本發(fā)明的方法的規(guī)范的部 分。)
根據(jù)本發(fā)明的另一方面,可引導(dǎo)主機(jī)設(shè)備配置用于從具有 MMC/SD接口的外圍設(shè)備被引導(dǎo)。主機(jī)設(shè)備包括(如所有其它上述 主機(jī)設(shè)備)電源,連接到所述電源的處理器,以及連接到所述處理 器和連"t妻到所述電源的MMC/SD接口 ,所述MMC/SD接口具有電源 端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及 具有CMD端子的CMD線。
該主機(jī)設(shè)備配置用于在具有MMC/SD 4妄口的外圍設(shè)備的初始化 過程期間從所述主機(jī)設(shè)備經(jīng)由所述MMC/SD接口發(fā)送用于引導(dǎo)請求 的自變量到外圍設(shè)備,以及針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
針對引導(dǎo)請求的所述自變量可以例如包括例如在CMD0階段期 間發(fā)送的在所述MMC/SD接口的復(fù)位命令(即在向卡的電源端子提 供推薦電壓之后立即的具有MMC/SD接口的外圍設(shè)備的初始化)。
在本發(fā)明的示范性實(shí)施方式中,所述主機(jī)設(shè)備配置用于經(jīng)由所述 MMC/SD接口發(fā)送附加自變量,所述附加自變量指示涉及例如將用 于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量以及要使用的時鐘頻率/定時模式的 引導(dǎo)序列的參數(shù)等。這些附加自變量/參數(shù)連同用于引導(dǎo)請求的所述 自變量一起從所述主機(jī)i殳備發(fā)送到所述MMC/SD接口 。
在本發(fā)明的另一示范性實(shí)施方式中,所述主機(jī)設(shè)備進(jìn)一步配置用 于設(shè)置所述MMC/SD接口的數(shù)據(jù)總線端子為低,用于指示將用于傳
輸?shù)臄?shù)據(jù)總線的寬度。這實(shí)現(xiàn)了能夠經(jīng)由數(shù)據(jù)總線的數(shù)據(jù)端子發(fā)送
總線信息到具有MMC/SD接口的外圍設(shè)備用于配置引導(dǎo)數(shù)據(jù)傳輸?shù)?主機(jī)設(shè)備。在本發(fā)明的方法描述中給出了指示/用信號通知這些參數(shù) 的多個可能性的例子。期望主機(jī)設(shè)備可以不從具有MMC/SD接口的 傳統(tǒng)外圍設(shè)備引導(dǎo)。
根據(jù)本發(fā)明的又一方面,提供了具有MMC/SD接口的外圍設(shè)備, 其配置用于引導(dǎo)可引導(dǎo)主機(jī)設(shè)備(其進(jìn)而配置用于從具有MMC/SD 接口的外圍設(shè)備被引導(dǎo))。根據(jù)本發(fā)明,外圍設(shè)備包括MMC/SD接 口,其包括電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有時鐘端 子的時鐘線以及具有CMD端子的CMD線;外圍設(shè)備控制器,連接 到所述MMC/SD接口 ;以及存儲模塊,連接到所述外圍設(shè)備控制器。 進(jìn)一步根據(jù)本發(fā)明,具有MMC/SD接口的所述外圍設(shè)備配置用于如 果在外圍設(shè)備的所述MMC/SD接口接收來自所述主機(jī)設(shè)備的用于引 導(dǎo)請求的自變量,以及當(dāng)在時鐘線接收時鐘信號時,在引導(dǎo)數(shù)據(jù)存 儲在外圍設(shè)備中的情況下,經(jīng)由所述MMC/SD接口發(fā)送開始于數(shù)據(jù) 傳輸?shù)钠鹗嘉坏臄?shù)據(jù)到所述主機(jī)設(shè)備。
例如設(shè)想如果引導(dǎo)請求包括例如復(fù)位命令(如MMC/SD接口規(guī) 范中定義的)則具有MMC/SD接口的外圍設(shè)備識別用于引導(dǎo)請求的 自變量。
在本發(fā)明的示范性實(shí)施方式中,所述外圍設(shè)備控制器進(jìn) 一 步配置 用于在所述MMC/SD接口端子的數(shù)據(jù)總線端子處接收低信號,指示 將用于傳輸?shù)臄?shù)據(jù)總線的寬度,以及其中所述外圍設(shè)備控制器進(jìn)一 步配置用于使用將用于傳輸?shù)臄?shù)據(jù)總線的所述指示的數(shù)據(jù)總線寬 度。在本發(fā)明的上述描述中公開了可以如何將總線寬度編碼為 MMC/SD接口的數(shù)據(jù)端子/線Dat0到Dat7的8位自變量的例子。
在本發(fā)明的另 一 示范性實(shí)施方式中,所述外圍設(shè)備控制器進(jìn)一 步 配置用于從所述主機(jī)設(shè)備接收附加自變量連同用于引導(dǎo)請求的自變 量,該附加自變量指示涉及例如將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù) 量以及要使用的頻率/定時模式的引導(dǎo)序列的參數(shù)和/或其它參數(shù)。該
實(shí)施方式的具有MMC/SD接口的外圍設(shè)備(控制器)進(jìn)一步配置用 于根據(jù)在所述接收的自變量中指示的所述參數(shù)經(jīng)由所述數(shù)據(jù)總線發(fā) 送所述(請求的引導(dǎo))數(shù)據(jù)到所述主機(jī)設(shè)備。
還可以注意,主機(jī)設(shè)備的所有上述實(shí)現(xiàn)具有主要設(shè)計(jì)目標(biāo),即或 多或少相對于完全初始化MMC/SD接口以及隨后搜索存儲在具有 MMC/SD接口的所述外圍設(shè)備上的引導(dǎo)數(shù)據(jù)的傳統(tǒng)方法,縮短到引 導(dǎo)數(shù)據(jù)的訪問時間。
(應(yīng)該注意,使用術(shù)語"MMC/SD接口 "指明單獨(dú)MMC接口或 組合的MMC/SD接口,乃至單獨(dú)SD接口,因?yàn)椴皇撬蠱MC接 口也支持SD形狀因子)。
如在汽車儀表板的情況下,MMC設(shè)計(jì)者看來已實(shí)現(xiàn)了 MMC/SD 接口的初始化過程中的"全高,,輸入,可能能夠檢查端子之一是否 有了故障或失效。如果由電子故障造成低信號狀態(tài),這是其中本發(fā) 明的方法可能產(chǎn)生錯誤結(jié)果的唯一情況。
根據(jù)本發(fā)明的又一方面,提供了可引導(dǎo)主機(jī)設(shè)備,其配置用于從 具有MMC/SD接口的外圍i殳備^L引導(dǎo)。該主機(jī)i殳備包括電源,連接 到所述電源的處理器,以及連接到所述處理器和連接到所述電源的 MMC/SD接口,所述MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端 子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有CMD端子的CMD 線。本發(fā)明的該方面的主機(jī)設(shè)備配置用于經(jīng)由所述MMC/SD接口開 始外圍設(shè)備的標(biāo)準(zhǔn)初始化數(shù)據(jù)交換,直到達(dá)到具有MMC/SD接口的 外圍設(shè)備的備用狀態(tài),以及從所述備用狀態(tài)執(zhí)行所述主機(jī)設(shè)備和所 述外圍設(shè)備之間的數(shù)據(jù)交換用于搜索在總線中的組件中的有效引導(dǎo) 代碼。
所述處理器可以設(shè)置有(可引導(dǎo))主存儲器。(該主機(jī)設(shè)備配置 為完全不發(fā)送"引導(dǎo)請求自變量",因?yàn)橹鳈C(jī)設(shè)備可能能夠自主地 搜索可以識別為引導(dǎo)文件/數(shù)據(jù)的數(shù)據(jù)文件。)即,通過或在(卡已 進(jìn)入備用狀態(tài)前的正常初始化的)CMD0、 CMD1、 CMD2、 CMD3 命令之后的初始化序列的較后階段中給出引導(dǎo)請求。在具有
MMC/SD接口的外圍設(shè)備達(dá)到備用狀態(tài)之后,主機(jī)可以逐一檢查總 線中的組件以搜索有效引導(dǎo)碼。
該主機(jī)設(shè)備可以在主機(jī)設(shè)備開始應(yīng)用以有效搜索引導(dǎo)數(shù)據(jù)之前 使用具有MMC/SD接口的外圍設(shè)備的傳統(tǒng)初始化。具有MMC/SD 接口的外圍設(shè)備的該實(shí)現(xiàn)要求主機(jī)設(shè)備能夠執(zhí)行整個初始化過程以 及甚至在未引導(dǎo)條件下存儲在外圍設(shè)備上的用于引導(dǎo)數(shù)據(jù)的搜索/加 載例程。這可以解釋為某種BIOS能力,使得設(shè)備能夠操作MMC/SD 接口以初始化外圍設(shè)備以及隨后搜索引導(dǎo)數(shù)據(jù)。這可以例如通過至 少用于具有MMC/SD接口的外圍設(shè)備的初始化硬編碼算法和用于引 導(dǎo)數(shù)據(jù)搜索/加載的算法來實(shí)現(xiàn)。
該實(shí)現(xiàn)具有顯著優(yōu)點(diǎn),其可以通過各自^務(wù)改的主機(jī)設(shè)備和完全傳 統(tǒng)的具有MMC/SD接口的外圍設(shè)備來執(zhí)行。然而,用戶可能遇到的 事實(shí)可以包括用戶可能在插槽(即接口 )中無意地使用具有MMC/SD 接口的錯誤外圍設(shè)備。因此,該實(shí)現(xiàn)對于如下應(yīng)用是尤其有用的, 其中沒有具有MMC/SD接口的外圍設(shè)備例如游戲設(shè)備(例如N-gage 游戲操作臺),設(shè)備將不工作是清楚的,或者其中MMC/SD卡用作 內(nèi)部固件存儲(即用戶不訪問卡并且可以在沒有任何引導(dǎo)數(shù)據(jù)的情 況下不失敗的試圖通過具有MMC/SD接口的外圍設(shè)備操作設(shè)備)。
根據(jù)本發(fā)明的又一方面,可引導(dǎo)主機(jī)設(shè)備配置用于從具有 MMC/SD接口的外圍設(shè)備被引導(dǎo),其中所述外圍設(shè)備設(shè)置有操作條 件寄存器(OCR),具有用于引導(dǎo)請求的附加自變量。如在主機(jī)設(shè) 備的其它上述實(shí)施方式中,所述主積3殳備包括電源,連接到所述電 源的處理器,以及連接到所述處理器和連接到所述電源的MMC/SD 接口,所述MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù) 總線、具有時鐘端子的時鐘線以及具有CMD端子的CMD線。根據(jù) 本發(fā)明,主機(jī)設(shè)備配置用于在具有MMC/SD接口的外圍設(shè)備的初始 化之后發(fā)送用于引導(dǎo)請求的自變量到所述MMC/SD接口 ,以及針對 將要經(jīng)由所述MMC/SD接口從外圍設(shè)備接收的引導(dǎo)數(shù)據(jù)監(jiān)控數(shù)據(jù)總 線。
即,主機(jī)設(shè)備可以在具有MMC/SD接口的外圍設(shè)備的初始化之 后發(fā)送用于引導(dǎo)請求的自變量到所述MMC/SD接口 ,以及針對將要 經(jīng)由所述MMC/SD接口從外圍設(shè)備接收的引導(dǎo)數(shù)據(jù)監(jiān)控數(shù)據(jù)總線。 這可以發(fā)生在例如"CMDl"數(shù)據(jù)交換階段/周期期間或之后。對比 于上述版本的主機(jī)設(shè)備,存在設(shè)置用于外圍設(shè)備/在外圍設(shè)備中的專 用請求用于傳輸引導(dǎo)數(shù)據(jù)。即,在該實(shí)施方式中,用于主機(jī)設(shè)備的 引導(dǎo)過程僅包括初始化過程、引導(dǎo)數(shù)據(jù)請求的傳輸和引導(dǎo)數(shù)據(jù)的接 收。在該實(shí)現(xiàn)中,具有MMC/SD接口的外圍設(shè)備知道是否存在引導(dǎo) 數(shù)據(jù)以及它們存儲在什么位置。即使技術(shù)人員容易地識別該事實(shí), 清楚規(guī)定主機(jī)設(shè)備實(shí)際上知道(即已存儲)用于具有MMC/SD接口 的外圍設(shè)備的操作條件寄存器的引導(dǎo)請求的自變量。
本發(fā)明的該實(shí)現(xiàn)要求寄存器信息的新定義在CMDl級中定義, 以及OCR寄存器中的附加自變量以指示組件是否內(nèi)嵌有/包括引導(dǎo) 碼。因此,主機(jī)可能在發(fā)送CMDl時(為CMDl分配的自變量)要 求引導(dǎo)數(shù)據(jù)。
根據(jù)本發(fā)明的又一附加方面,提供了具有MMC/SD接口的外圍 設(shè)備。該外圍設(shè)備配置用于引導(dǎo)可引導(dǎo)主機(jī)設(shè)備,該主機(jī)設(shè)備配置 用于從具有MMC/SD接口的外圍設(shè)備被引導(dǎo)。該具有MMC/SD接口 的外圍設(shè)備在操作條件寄存器中設(shè)置有用于引導(dǎo)請求的附加自變 量。該外圍設(shè)備包括MMC/SD接口 ,其包括電源端子、具有數(shù)據(jù)總 線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有CMD端子的 CMD線;連接到所述MMC/SD接口的具有操作條件寄存器的外圍 設(shè)備控制器;以及連接到所述外圍設(shè)備控制器的存儲模塊。
該具有MMC/SD接口的外圍設(shè)備在操作條件寄存器中設(shè)置有用 于引導(dǎo)請求的附加自變量。該具有MMC/SD接口的外圍設(shè)備(或其 控制器)配置用于在具有MMC/SD接口的外圍設(shè)備的初始化過程之 后在外圍設(shè)備處接收用于引導(dǎo)請求的自變量,以及獲取(來自存儲 模塊的所述請求的引導(dǎo)數(shù)據(jù))和經(jīng)由所述MMC/SD接口發(fā)送來自外 圍設(shè)備存儲模塊的所述引導(dǎo)數(shù)據(jù)到所述主機(jī)設(shè)備。因此,外圍設(shè)備
使得主機(jī)設(shè)備能夠通過發(fā)送單個引導(dǎo)數(shù)據(jù)傳輸請求來請求引導(dǎo)數(shù)
據(jù)。然而,MMC/SD的操作條件寄存器必須改變,其固有地包括這 樣一個事實(shí),市場上具有MMC/SD接口的傳統(tǒng)外圍設(shè)備實(shí)際上不可 能升級具有該額外功能。
在本發(fā)明的示范性實(shí)施方式中,具有所述用于引導(dǎo)請求的自變量 的所述操作條件寄存器在具有MMC/SD接口的外圍設(shè)備中實(shí)現(xiàn)為硬 編碼硬件組件,連接到所述外圍設(shè)備控制器或在其中實(shí)現(xiàn)。
在該硬件解決方案中,將包括引導(dǎo)能力的組件將僅通過其OCR 答復(fù),以及在CMD1握手已完成之后(準(zhǔn)備狀態(tài)),主機(jī)可以^又繼 續(xù)對總線產(chǎn)生時鐘信號以再次在數(shù)據(jù)線中接收起始數(shù)據(jù)。然而,該 實(shí)現(xiàn)要求引導(dǎo)/非引導(dǎo)組件之間的不同硬件。無論如何,沒有接收引 導(dǎo)請求,甚至允許引導(dǎo)過程的具有MMC/SD接口的外圍設(shè)備可以用 作具有MMC/SD接口的非引導(dǎo)外圍設(shè)備。
在本發(fā)明的另一示范性實(shí)施方式中,具有所述用于引導(dǎo)請求的自 變量的所述操作條件寄存器實(shí)現(xiàn)為在外圍設(shè)備控制器中運(yùn)行的軟 件。該實(shí)施方式表示固件(軟件)解決方案,其中總線中的所有組 件將通過其OCR答復(fù)直到它們準(zhǔn)備好,以及僅最后答復(fù)將包括關(guān)于 引導(dǎo)能力的有效指示。該實(shí)現(xiàn)是更復(fù)雜的,因?yàn)槿缦率聦?shí),如果在 相同總線中具有多于一個組件,以及能夠引導(dǎo)的組件比不能夠引導(dǎo) 的組件更早準(zhǔn)備好,則引導(dǎo)能力需要再次在初始化序列中較后核實(shí) (例如通過再次分別讀取OCR寄存器)。
應(yīng)該注意,存儲卡控制器的存儲卡可以進(jìn)一 步設(shè)置有從MMC/SD 接口規(guī)范已知的附加子元件,例如通電檢測模塊,存儲核心,存儲 接口,接口存儲卡接口控制器和其它組件。
以下,將通過參照附圖詳細(xì)描述本發(fā)明,附圖中
圖1是示出根據(jù)本發(fā)明的一個方面的方法的兩部分的流程圖2示出圖1的方法的可選實(shí)施方式;
圖3示出根據(jù)本發(fā)明的引導(dǎo)過程的另一實(shí)施方式;
圖4示出本發(fā)明的另一實(shí)施方式,其中在具有MMC/SD 4妻口的 外圍設(shè)備已完全初始化之后傳輸引導(dǎo)請求;
圖5示出經(jīng)由MMC/SD接口連接的主機(jī)設(shè)備和具有MMC/SD接 口的外圍設(shè)備;以及
圖6示出各自設(shè)置有經(jīng)由MMC/SD接口連接的專用引導(dǎo)單元的 主機(jī)設(shè)備和具有MMC/SD接口的外圍設(shè)備。
具體實(shí)施例方式
在以下詳細(xì)描述中,對相同組件給予相同參考標(biāo)號,不論它們是 否在本發(fā)明的不同實(shí)施方式中示出。為了清楚簡明示出本發(fā)明,附 圖不 一定按照比例繪制,并且可能以某種示意形式示出特定功能。
在圖1和隨后的圖2、 3和4中,在左側(cè)示出流程圖的主機(jī)設(shè)備 部分,而在右側(cè)示出的流程圖部分指的是由具有MMC/SD接口的外 圍設(shè)備執(zhí)行的或在其中執(zhí)行的動作或過程。
為了進(jìn)一步示出本發(fā)明的方法, 一些選擇的信號,例如電源 (PWR)、有時甚至分成單個數(shù)據(jù)信號(DatO, Datl,…)的數(shù)據(jù) (DAT),時鐘(CLK)信號和命令信號以傳統(tǒng)左到右的方式指示。 為了更好地指示低信號狀態(tài),低信號示出為從高到低的轉(zhuǎn)變。
傳統(tǒng)用信號通知以虛線指示(當(dāng)需要時)。
圖1是示出根據(jù)本發(fā)明的一個方面的方法的兩部分的流程圖。在 流程圖中,主機(jī)設(shè)備從外圍設(shè)備經(jīng)由MMC/SD連接到MMC/SD卡。 流程圖開始于左上角,其中主機(jī)設(shè)備通過向MMC/SD接口的電源端 子提供電源到來向具有MMC/SD接口的外圍設(shè)備供電。因此,外圍 設(shè)備接收電源信號(右上)。
同時(或隨后)主機(jī)設(shè)備提供"低"信號到命令線(CMD)。 接收該信號(當(dāng)根據(jù)現(xiàn)有MMC/SD接口規(guī)范期望時)高信號狀態(tài)(以 及后來CMD0命令)的具有MMC/SD接口的外圍設(shè)備檢測(根據(jù)現(xiàn) 有MMC/SD接口初始化規(guī)范)"不期望的"信號。MMC/SD卡(根
據(jù)本發(fā)明)配置用于識別該低信號狀態(tài)并將其監(jiān)視為引導(dǎo)請求。檢
測的引導(dǎo)請求之后,具有MMC/SD接口的外圍設(shè)備僅獲取引導(dǎo)數(shù)據(jù) (例如從專用文件或存儲區(qū))并經(jīng)由接口發(fā)送到主機(jī)設(shè)備(如DAT 信號所指示)。
因此,主機(jī)設(shè)備監(jiān)控接口的數(shù)據(jù)端子用于接收引導(dǎo)信號。當(dāng)接收 數(shù)據(jù)時,主機(jī)設(shè)備可以將它們加載到主機(jī)設(shè)備的主存儲器中以實(shí)際 地終止引導(dǎo)請求。
為了指示在命令線的傳統(tǒng)信號狀態(tài)(全部時間為高,直到傳統(tǒng)初 始化過程的CMDO, CMD1和CMD2,...的傳輸),在圖1中示出 虛線。
圖2示出圖1的方法的可選實(shí)施方式。圖1中所公開的補(bǔ)充。圖 2開始于與圖1的相同步驟。除了在CMD端子處提供的低信號,主 機(jī)設(shè)備在時鐘端子處提供時鐘信號(持續(xù)至少74個周期或者直到引 導(dǎo)數(shù)據(jù)已傳輸)。
通過提供該附加信號,具有MMC/SD接口的外圍設(shè)備可以在例 如命令端子故障和包含兩個不同信號分量的引導(dǎo)請求之間清楚地區(qū)分。
在附加步驟中,主機(jī)設(shè)備設(shè)置數(shù)據(jù)總線的兩個DatO和Datl端子 為低,從而指示將用于隨后的數(shù)據(jù)傳輸?shù)臄?shù)據(jù)總線的寬度。(傳統(tǒng) 上,總線端子設(shè)置為"高,,,如虛線所示。)"低信號"在卡處接 收并由此解釋,因此在最后步驟中僅DatO和Datl端子示出發(fā)送信 號,而Dat2和Dat…端子不用于引導(dǎo)數(shù)據(jù)傳輸。
通過該實(shí)現(xiàn), 一旦具有MMC/SD接口的外圍設(shè)備連接,主機(jī)設(shè) 備可以通過起始步驟開始引導(dǎo)數(shù)據(jù)的下載,從而顯著加速引導(dǎo)過程。
圖3類似示出引導(dǎo)過程。對比于圖2的實(shí)現(xiàn),使用修改的CMDO 來指示引導(dǎo)請求到具有MMC/SD接口的外圍設(shè)備。傳統(tǒng)上,初始化 過程將包括具有自變量00H的CMD命令。本發(fā)明的方法的所示實(shí) 現(xiàn)使用(根據(jù)傳統(tǒng)規(guī)范)"不期望的"具有自變量01H的CMDO信 號。通過接收修改的CMDO信號,MMC卡可以識別進(jìn)入的引導(dǎo)請求,
即使在具有MMC/SD接口的外圍設(shè)備達(dá)到初始化狀態(tài)之前。
修改的CMD0命令可以單獨(dú)發(fā)送或者(如在圖2中)連同時鐘 信號一起發(fā)送。
可以連同引導(dǎo)請求在命令自變量內(nèi)傳輸其它參數(shù)。這些種類的附 加參數(shù)可以是例如使用的總線寬度和使用的定時模式(各位/值將需 要分配)。
圖4示出本發(fā)明的另一實(shí)現(xiàn),其中在具有MMC/SD接口的外圍 設(shè)備已完全初始化即"備用狀態(tài)"之后傳輸引導(dǎo)請求。在備用時, 主機(jī)設(shè)備經(jīng)由命令線發(fā)送引導(dǎo)請求命令到具有MMC/SD接口的外圍 設(shè)備(并開始對MMC/SD接口的時鐘端子產(chǎn)生時鐘信號)。該實(shí)現(xiàn) 要求各引導(dǎo)請求命令在MMC/SD接口的協(xié)議中定義(即在具有 MMC/SD接口的外圍設(shè)備的操作條件寄存器中)。(還設(shè)想主機(jī)設(shè) 備自主地針對可識別為引導(dǎo)數(shù)據(jù)的特定數(shù)據(jù)結(jié)構(gòu)搜索具有MMC/SD 接口的外圍設(shè)備的存儲模塊,例如標(biāo)記有例如"**.bot"的文件名。) 當(dāng)接收引導(dǎo)請求時,具有MMC/SD接口的外圍設(shè)備可以自動地定義 希望的引導(dǎo)數(shù)據(jù)并且可以初始化數(shù)據(jù)傳輸。
圖5示出經(jīng)由MMC/SD接口連接的主機(jī)設(shè)備和具有MMC/SD接 口的外圍設(shè)備。主機(jī)設(shè)備包括處理單元(CPU)和MMC/SD接口控 制器。為了避免混淆,示出MMC/SD接口的CMD CLK和DAT端 子的圖形。MMC/SD存儲卡包括用作接口和存儲模塊之間的介質(zhì)的 外圍設(shè)備控制器,并用于控制將在MMC/SD接口和存儲模塊之間執(zhí) 行的所有過程。
在本發(fā)明的實(shí)現(xiàn)中,主機(jī)接口控制器配置用于執(zhí)行(例如發(fā)送執(zhí) 行要求的信號)本發(fā)明的方法。
因此,主機(jī)設(shè)備(或者主機(jī)接口控制器)可以設(shè)置有實(shí)現(xiàn)為主機(jī) 設(shè)備中的軟件的專用引導(dǎo)模塊。
在本發(fā)明的實(shí)現(xiàn)中,具有MMC/SD接口的外圍設(shè)備的接口控制 器配置用于執(zhí)行(例如發(fā)送執(zhí)行要求的信號)本發(fā)明的方法。
類似地,MMC/SD接口控制器設(shè)置有實(shí)現(xiàn)為軟件的專用引導(dǎo)模
塊。軟件引導(dǎo)模塊使得外圍設(shè)備控制器能夠確定是否接收指示引導(dǎo) 請求的信號以及引導(dǎo)數(shù)據(jù)是否將發(fā)送到主機(jī)設(shè)備。
圖5示出主機(jī)設(shè)備和具有MMC/SD接口的外圍設(shè)備,其中每個 都設(shè)置有專用引導(dǎo)模塊或引導(dǎo)單元。
在本發(fā)明的實(shí)現(xiàn)中,連接到主機(jī)接口控制器的引導(dǎo)單元/引導(dǎo)模 塊配置用于執(zhí)行(例如發(fā)送執(zhí)行要求的信號)本發(fā)明的方法。主機(jī) 設(shè)備(或主機(jī)接口控制器)設(shè)置有實(shí)現(xiàn)為主機(jī)設(shè)備中的軟件的專用 引導(dǎo)模塊。這種引導(dǎo)模塊必須連接到CPU以能夠確定是否將執(zhí)行引 導(dǎo)程序。附加地,引導(dǎo)模塊或引導(dǎo)單元也必須連接到(MMC/SD) 接口 (或控制器)以能夠采取引導(dǎo)(或執(zhí)行)引導(dǎo)程序所需的所有 步驟(即發(fā)送所有所需信號)。引導(dǎo)單元可以實(shí)現(xiàn)為并行連接到接 口本身和CPU之間的接口控制器的電路。
所述引導(dǎo)模塊可以包括組件,用于在加電期間將所述MMC/SD 接口的命令端子設(shè)置為低,只要卡已經(jīng)經(jīng)由所述數(shù)據(jù)總線發(fā)送數(shù)據(jù) 就從所述主機(jī)設(shè)備發(fā)送時鐘信號到所述MMC/SD接口的所述時鐘端 子,將數(shù)據(jù)總線端子設(shè)置為低,以指示將用于數(shù)據(jù)傳輸?shù)臄?shù)據(jù)總線 的寬度,和/或可以進(jìn)一步包括組件,配置用于在初始化過程期間發(fā) 送用于引導(dǎo)請求的自變量到MMC/SD接口 ,發(fā)送時鐘信號到時鐘線, 和/或進(jìn)一步包括組件,配置用于在具有MMC/SD接口的外圍設(shè)備的 初始化之后發(fā)送用于引導(dǎo)請求的自變量到所述MMC/SD接口 ,并針 對將經(jīng)由所述MMC/SD接口從外圍設(shè)備接收的引導(dǎo)數(shù)據(jù)的起始位監(jiān) 控數(shù)據(jù)總線。
在所述外圍設(shè)備的另一示范性實(shí)施方式中,具有用于引導(dǎo)請求的 所述自變量的所述操作條件寄存器實(shí)現(xiàn)為在外圍設(shè)備控制器中運(yùn)行 的軟件。
在本發(fā)明的實(shí)現(xiàn)中,MMC/SD接口控制器配置用于通過使用專 用引導(dǎo)模塊或引導(dǎo)單元執(zhí)行(例如發(fā)送執(zhí)行要求的信號)本發(fā)明的 方法。
類似地,MMC/SD (存儲卡或)接口控制器設(shè)置有實(shí)現(xiàn)為在 MMC/SD存儲設(shè)備中硬件實(shí)現(xiàn)的軟件的專用引導(dǎo)模塊。這種引導(dǎo)模 塊必須連接到外圍設(shè)備控制器(或至少連接到接口 )以能夠確定是 否接收指示引導(dǎo)請求的信號以及引導(dǎo)數(shù)據(jù)是否將發(fā)送到主機(jī)設(shè)備。 引導(dǎo)模塊也可以連接到在外圍設(shè)備的存儲模塊上定義的專用引導(dǎo)扇 區(qū)以簡化引導(dǎo)過程。
所述引導(dǎo)模塊可以包括組件,用于在加電之前或期間在命令端子 接收低信號之后經(jīng)由數(shù)據(jù)總線發(fā)送預(yù)定存儲區(qū)的起始數(shù)據(jù),開始于 起始數(shù)據(jù)幀的起始位。
還設(shè)想引導(dǎo)單元或引導(dǎo)模塊包括專用組件,接收時鐘信號作為指 示引導(dǎo)請求的附加參數(shù),并且可以進(jìn)一步設(shè)置有組件,用于使用由 在數(shù)據(jù)總線端子處接收的低信號指示的總線寬度發(fā)送所述數(shù)據(jù)。
引導(dǎo)單元還可以設(shè)置有專用操作條件寄存器,其具有在具有 MMC/SD接口的所述外圍設(shè)備中設(shè)置的用于引導(dǎo)請求的附加自變 量。
在本發(fā)明的又一示范性實(shí)施方式中,所述具有用于引導(dǎo)請求的所 述自變量的操作條件寄存器實(shí)現(xiàn)為在外圍設(shè)備控制器中運(yùn)行的軟 件。
本發(fā)明的使用實(shí)現(xiàn)了通過存儲卡接口內(nèi)插存儲器的非常有效的 引導(dǎo),其中最小化HW/FW的現(xiàn)有管腳/協(xié)議的使用改變。
本申請通過示例包含本發(fā)明的實(shí)現(xiàn)和實(shí)施方式的描述。本領(lǐng)域技 術(shù)人員將理解,本發(fā)明不限于上述實(shí)施方式的細(xì)節(jié),并且本發(fā)明也 可以在不脫離本發(fā)明的特征的前提下以其它形式實(shí)現(xiàn)。上述實(shí)施方 式應(yīng)認(rèn)為是示例而不是限制。因此實(shí)現(xiàn)和使用本發(fā)明的可能性僅由 所附權(quán)利要求所限制。從而由權(quán)利要求確定的實(shí)現(xiàn)本發(fā)明的各種選 擇,包括等同實(shí)現(xiàn),也屬于本發(fā)明的范圍。
權(quán)利要求
1.一種用于經(jīng)由MMC/SD接口從外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方法,該MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有命令端子的命令線,所述方法包括向所述電源端子提供電源,在加電期間將所述MMC/SD接口的命令端子設(shè)置為低,以及針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
2. 根據(jù)權(quán)利要求1所述的方法,所述方法進(jìn)一步包括從所述主機(jī) 設(shè)備向所述MMC/SD接口的所述時鐘端子發(fā)送時鐘信號,其中在24 個到148個初始化時鐘周期的傳輸期間之間、優(yōu)選地在60個和100 個初始化時鐘周期的傳輸期間之間以及最優(yōu)選地到7 4個初始化時鐘 周期的傳輸期間,在加電過程之前或期間將所述MMC/SD接口的所 述命令端子設(shè)置為低。
3. 根據(jù)權(quán)利要求1所述的方法,所述方法進(jìn)一步包括只要設(shè)備已 經(jīng)經(jīng)由所述數(shù)據(jù)總線發(fā)送了數(shù)據(jù)就從所述主機(jī)設(shè)備向所述時鐘端子 發(fā)送時鐘信號。
4. 根據(jù)權(quán)利要求1所述的方法,其中所述數(shù)據(jù)總線端子,所述方 法進(jìn) 一 步包括將數(shù)據(jù)總線端子設(shè)置為低,以指示將用于數(shù)據(jù)傳輸?shù)?數(shù)據(jù)總線的寬度。
5. —種能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的計(jì) 算機(jī)程序產(chǎn)品,包括用于當(dāng)所述程序在主機(jī)設(shè)備、具有MMC/SD接 口的外圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的 系統(tǒng)上運(yùn)行時執(zhí)行如權(quán)利要求1所述的步驟的程序代碼段。
6. —種用于執(zhí)行能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī) 設(shè)備的方法的計(jì)算機(jī)程序產(chǎn)品,包括存儲在機(jī)器可讀介質(zhì)上的程序 代碼段,用于當(dāng)所述程序產(chǎn)品在主機(jī)設(shè)備、具有MMC/SD接口的外 圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)上 運(yùn)行時,執(zhí)行如權(quán)利要求1所述的步驟。
7. —種計(jì)算機(jī)數(shù)據(jù)信號,其實(shí)施在載波中,并且表示指令,當(dāng)其 由主機(jī)設(shè)備、具有MMC/SD接口的外圍設(shè)備或內(nèi)插有具有MMC/SD 接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)執(zhí)行時,使得如權(quán)利要求1所述 的步驟得以被執(zhí)行。
8. —種用于從具有MMC/SD接口的外圍設(shè)備經(jīng)由所述MMC/SD 接口進(jìn)行引導(dǎo)的方法,該MMC/SD接口具有電源端子、具有數(shù)據(jù)總 線端子的數(shù)據(jù)總線、具有時鐘端子的時鐘線以及具有命令端子的命 令線,所述方法包括在所述MMC/SD口的所述電源端子處"l妄收電源, 在加電之前或期間在命令端子處接收低信號,以及 經(jīng)由數(shù)據(jù)總線發(fā)送預(yù)定存儲區(qū)的起始數(shù)據(jù),開始于起始數(shù)據(jù)幀的 起始位。
9. 根據(jù)權(quán)利要求8所述的方法,其中在24個到148個初始化時 鐘周期之間、優(yōu)選地在60個和100個初始化時鐘周期之間以及最優(yōu) 選地到74個初始化時鐘周期的傳輸期間,在加電期間如果在所述 MMC/SD接口的所述命令端子處接收低信號則僅經(jīng)由數(shù)據(jù)總線發(fā)送 預(yù)定存儲區(qū)的所述起始數(shù)據(jù)。
10. 根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括 在數(shù)據(jù)總線端子處接收低信號,指示著將用于傳輸?shù)臄?shù)據(jù)總線的寬度,以及使用所指示的數(shù)據(jù)總線寬度發(fā)送所述數(shù)據(jù)。
11 .一種能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的計(jì) 算機(jī)程序產(chǎn)品,包括用于當(dāng)所述程序在主機(jī)設(shè)備、具有MMC/SD接 口的外圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的 系統(tǒng)上運(yùn)行時執(zhí)行如權(quán)利要求8所述的步驟的程序代碼段。
12.—種用于執(zhí)行能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī) 設(shè)備的方法的計(jì)算機(jī)程序產(chǎn)品,包括存儲在機(jī)器可讀介質(zhì)上的程序 代碼段,用于當(dāng)所述程序產(chǎn)品在主機(jī)設(shè)備、具有MMC/SD接口的外 圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)上 運(yùn)行時,執(zhí)行如;f又利要求8所述的步驟。
13. —種計(jì)算機(jī)數(shù)據(jù)信號,其實(shí)施在載波中,并且表示著指令, 當(dāng)其由主機(jī)設(shè)備、具有MMC/SD接口的外圍設(shè)備或內(nèi)插有具有 MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)執(zhí)行時,使得如權(quán)利要 求8所述的步驟被執(zhí)行。
14. 一種用于從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方 法,該MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、在初始化過程期間從所述主機(jī)設(shè)備經(jīng)由所述MMC/SD接口發(fā)送 用于引導(dǎo)請求的自變量到所述外圍設(shè)備, 發(fā)送時鐘信號到時鐘線,以及 針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
15. —種能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的計(jì) 算機(jī)程序產(chǎn)品,包括用于當(dāng)所述程序在主機(jī)設(shè)備、具有MMC/SD接 口的外圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的 系統(tǒng)上運(yùn)行時執(zhí)行如權(quán)利要求14所述的步驟的程序代碼段。
16. —種用于執(zhí)行能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī) 設(shè)備的方法的計(jì)算機(jī)程序產(chǎn)品,包括存儲在機(jī)器可讀介質(zhì)上的程序 代碼段,用于當(dāng)所述程序產(chǎn)品在主機(jī)設(shè)備、具有MMC/SD接口的外 圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)上 運(yùn)行時,執(zhí)行如權(quán)利要求14所述的步驟。
17. —種計(jì)算機(jī)數(shù)據(jù)信號,其實(shí)施在載波中,并且表示著指令, 當(dāng)其由主機(jī)設(shè)備、具有MMC/SD接口的外圍設(shè)備或內(nèi)插有具有 MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)執(zhí)行時,使得如權(quán)利要 求14所述的步驟被執(zhí)行。
18. 根據(jù)權(quán)利要求14所述的方法,進(jìn)一步包括 從所述主機(jī)設(shè)備發(fā)送附加自變量連同用于引導(dǎo)請求的自變量到MMC/SD接口,該附加自變量指示著與選自以下內(nèi)容的組的引導(dǎo)序 列相關(guān)的參數(shù)將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量,以及 要使用的時鐘頻率/定時模式。
19. 一種用于從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的方 法,該MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、在外圍設(shè)備的初始化過程期間在所述外圍設(shè)備的所述MMC/SD 接口處接收來自所述主機(jī)設(shè)備的用于引導(dǎo)請求的自變量, 在數(shù)據(jù)總線處接收時鐘信號,以及如果并且當(dāng)引導(dǎo)數(shù)據(jù)存儲在所述外圍設(shè)備中,則經(jīng)由所述MMC/SD 接口發(fā)送開始于數(shù)據(jù)傳輸?shù)钠鹗嘉坏臄?shù)據(jù)到所述主機(jī)設(shè)備。
20. 根據(jù)權(quán)利要求19所述的方法,進(jìn)一步包括從所述主機(jī)設(shè)備接 收附加自變量連同用于引導(dǎo)請求的所述自變量,該附加自變量指示 著與選自以下內(nèi)容的組的引導(dǎo)序列相關(guān)的參數(shù)將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量,以及 將用于數(shù)據(jù)傳輸?shù)臅r鐘頻率/定時模式,以及使用所述所指示的參數(shù)經(jīng)由所述數(shù)據(jù)總線傳輸數(shù)據(jù)到所述 主機(jī)設(shè)備。
21. —種能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的計(jì) 算機(jī)程序產(chǎn)品,包括用于當(dāng)所述程序在主機(jī)設(shè)備、具有MMC/SD接 口的外圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的 系統(tǒng)上運(yùn)行時執(zhí)行如權(quán)利要求19所述的步驟的程序代碼段。
22. —種用于執(zhí)行能夠從具有MMC/SD接口的外圍設(shè)備引導(dǎo)主機(jī) 設(shè)備的方法的計(jì)算機(jī)程序產(chǎn)品,包括存儲在機(jī)器可讀介質(zhì)上的程序 代碼段,用于當(dāng)所述程序產(chǎn)品在主機(jī)設(shè)備、具有MMC/SD接口的外 圍設(shè)備或內(nèi)插有具有MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)上 運(yùn)行時,執(zhí)行如權(quán)利要求19所述的步驟。
23. —種計(jì)算機(jī)數(shù)據(jù)信號,其實(shí)施在載波中,并且表示指令,當(dāng) 其由主機(jī)設(shè)備、具有MMC/SD接口的外圍設(shè)備或內(nèi)插有具有 MMC/SD接口的外圍設(shè)備的主機(jī)設(shè)備的系統(tǒng)執(zhí)行時,使得如權(quán)利要 求19所述的步驟被執(zhí)行。
24. —種配置用于從具有MMC/SD接口的外圍設(shè)備被引導(dǎo)的可引 導(dǎo)主才幾設(shè)備,所述主機(jī)設(shè)備包括電源,連接到所述電源的處理器,以及連接到所述處理器和連接到所述電源的MMC/SD接口,所述 MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有 時鐘端子的時鐘線以及具有命令端子的命令線,其中所述主機(jī)設(shè)備配置用于向所述MMC/SD接口的端子提供電 源,以及在加電期間將所述MMC/SD接口的命令端子i殳置為低,以 及針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
25. 根據(jù)權(quán)利要求24所述的可引導(dǎo)主機(jī)設(shè)備,其中所述處理器配 置用于從所述主機(jī)設(shè)備發(fā)送時鐘信號到所述MMC/SD接口的所述數(shù) 據(jù)總線端子,以及在24個到148個初始化時鐘周期之間,優(yōu)選地在 60個和100個初始化時鐘周期之間,以及最優(yōu)選地74個初始化時鐘 周期的傳輸時,在加電過程期間將所述MMC/SD接口的命令端子設(shè) 置為低。
26. 根據(jù)權(quán)利要求24所述的可引導(dǎo)主機(jī)設(shè)備,其中所述處理器進(jìn) 一步配置用于只要MMC/SD設(shè)備開始經(jīng)由所述數(shù)據(jù)總線發(fā)送起始數(shù) 據(jù)就從所述主機(jī)設(shè)備發(fā)送時鐘信號到所述MMC/SD接口的所述數(shù)據(jù) 總線端子。
27. 根據(jù)權(quán)利要求24所述的可引導(dǎo)主機(jī)設(shè)備,其中所述處理器配 置用于將數(shù)據(jù)總線端子設(shè)置為低,以指示將由插入所述MM C/ S D接 口的具有MMC/SD接口的外圍設(shè)備用于傳輸?shù)臄?shù)據(jù)總線的寬度。
28. —種具有MMC/SD接口的外圍設(shè)備,其配置用于引導(dǎo)可引導(dǎo) 的主機(jī)設(shè)備,該主機(jī)設(shè)備配置用于從具有MMC/SD接口的外圍設(shè)備 被引導(dǎo),所述外圍設(shè)備包括MMC/SD接口,設(shè)置有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總 線、具有時鐘端子的時鐘線以及具有命令端子的命令線, 外圍設(shè)備控制器,連接到所述MMC/SD接口,以及存儲模塊,連接到所述外圍設(shè)備控制器,以及其中所述外圍設(shè)備控制器配置用于當(dāng)在所述外圍設(shè)備的所述 MMC/SD接口的端子處接收電源,以及在加電期間在所述MMC/SD 接口的命令端子處接收低信號時,經(jīng)由數(shù)據(jù)總線發(fā)送預(yù)定存儲區(qū)的 起始數(shù)據(jù),開始于起始數(shù)據(jù)幀的起始位。
29. 根據(jù)權(quán)利要求28所述的外圍設(shè)備,其中所述外圍設(shè)備控制器 進(jìn)一步配置用于在24個到148個初始化時鐘周期之間,優(yōu)選地在60 個和100個初始化時鐘周期之間,以及最優(yōu)選地到74個初始化時鐘 周期的傳輸期間,僅當(dāng)在加電過程之前或期間在所述MMC/SD接口 的所述命令端子處接收低信號時,經(jīng)由數(shù)據(jù)總線發(fā)送預(yù)定存儲區(qū)的 所述初始lt才居。
30. 根據(jù)權(quán)利要求28所述的外圍設(shè)備,其中所述外圍設(shè)備控制器 進(jìn)一步配置用于在所述MMC/SD接口的數(shù)據(jù)總線端子處接收低信號,指示著將 用于傳輸?shù)臄?shù)據(jù)總線的寬度,以及使用所指示的數(shù)據(jù)總線寬度發(fā)送所述數(shù)據(jù)。
31. —種配置用于從具有MMC/SD接口的外圍設(shè)備被引導(dǎo)的可引 導(dǎo)主機(jī)i殳備,所述主機(jī)設(shè)備包括電源,連接到所述電源的處理器,以及連接到所述處理器和連接到所述電源的MMC/SD接口,所述 MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有 時鐘端子的時鐘線以及具有命令端子的命令線;以及 其中所述主機(jī)設(shè)備配置用于在外圍設(shè)備的初始化過程期間從所述主機(jī)i殳備經(jīng)由所述 MMC/SD接口發(fā)送用于引導(dǎo)請求的自變量到外圍設(shè)備,以及 針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
32. 根據(jù)權(quán)利要求31所述的可引導(dǎo)主機(jī)設(shè)備,其中所述主機(jī)設(shè)備 配置用于從所述主機(jī)設(shè)備經(jīng)由所述MMC/SD接口發(fā)送附加自變量連 同用于引導(dǎo)請求的所述自變量到所述MMC/SD接口 ,所述附加自變 量指示與選自以下內(nèi)容的組的引導(dǎo)序列相關(guān)的參數(shù)將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量,以及要使用的時鐘頻率/定時模式。
33. 根據(jù)權(quán)利要求31所述的可引導(dǎo)主機(jī)設(shè)備,其中所述主機(jī)設(shè)備 進(jìn)一步配置用于將所述MMC/SD接口的數(shù)據(jù)總線端子設(shè)置為低,用 以指示將用于傳輸?shù)臄?shù)據(jù)總線的寬度。
34. —種外圍設(shè)備,配置用于引導(dǎo)可引導(dǎo)主機(jī)設(shè)備,該主機(jī)設(shè)備 配置用于從外圍設(shè)備被引導(dǎo),所述外圍設(shè)備包括MMC/SD接口,包括電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、外圍設(shè)備控制器,連接到所述MMC/SD接口 ,存儲模塊,連接到所述外圍設(shè)備控制器,以及其中所述外圍設(shè)備配置用于如果在外圍設(shè)備的所述MMC/SD接 口接收來自所述主機(jī)設(shè)備的用于引導(dǎo)請求的自變量,以及當(dāng)在時鐘 線接收時鐘信號時,在引導(dǎo)數(shù)據(jù)存儲在外圍設(shè)備中的情況下,經(jīng)由 所述MMC/SD接口發(fā)送開始于數(shù)據(jù)傳輸?shù)钠鹗嘉坏臄?shù)據(jù)到所述主機(jī) 設(shè)備。
35. 根據(jù)權(quán)利要求34所述的外圍設(shè)備,其中所述外圍設(shè)備控制器 進(jìn)一步配置用于在所述MMC/SD接口端子的數(shù)據(jù)總線端子處接收低 信號,指示將用于傳輸?shù)臄?shù)據(jù)總線的寬度,以及其中所述外圍設(shè)備 控制器進(jìn)一步配置用于使用將用于傳輸?shù)臄?shù)據(jù)總線的所述指示的數(shù) 據(jù)總線寬度。
36. 根據(jù)權(quán)利要求34所述的外圍設(shè)備,其中所述外圍設(shè)備控制器 進(jìn)一步配置用于從所述主機(jī)設(shè)備接收附加自變量連同用于引導(dǎo)請求 的自變量,該附加自變量指示與選自以下內(nèi)容的組的引導(dǎo)序列相關(guān) 的參數(shù)將用于引導(dǎo)扇區(qū)讀取的數(shù)據(jù)線的數(shù)量,以及 要使用的時鐘頻率/定時模式,以及進(jìn)一 步配置用于根據(jù)所述指示的參數(shù)經(jīng)由所述數(shù)據(jù)總線發(fā)送所 述數(shù)據(jù)到所述主機(jī)設(shè)備。
37. —種配置用于從具有MMC/SD接口的外圍設(shè)備被引導(dǎo)的可引 導(dǎo)主積3殳備,所述主機(jī)i殳備包括電源,連接到所述電源的處理器,以及連接到所述處理器和連接到所述電源的MMC/SD接口,所述 MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有 時鐘端子的時鐘線以及具有命令端子的命令線, 其中所述主機(jī)設(shè)備配置用于經(jīng)由所述MMC/SD接口開始具有MMC/SD接口的外圍設(shè)備 的標(biāo)準(zhǔn)初始化數(shù)據(jù)交換,直到達(dá)到所述外圍設(shè)備的備用狀態(tài),以及 從所述備用狀態(tài)執(zhí)行所述主機(jī)設(shè)備和所述外圍設(shè)備之間的 數(shù)據(jù)交換用于搜索在總線中的組件中的有效引導(dǎo)代碼。
38. —種配置用于從具有MMC/SD接口的外圍設(shè)備被引導(dǎo)的可引 導(dǎo)主機(jī)設(shè)備,其中所述外圍設(shè)備具有操作條件寄存器,具有用于引 導(dǎo)請求的附加自變量,所述主機(jī)設(shè)備包括電源,連接到所述電源的處理器,以及連接到所述處理器和連接到所述電源的MMC/SD接口,所述 MMC/SD接口具有電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總線、具有 時鐘端子的時鐘線以及具有命令端子的命令線, 其中所述主機(jī)設(shè)備配置用于在具有MMC/SD接口的外圍設(shè)備的初始化之后發(fā)送用于引 導(dǎo)^"求的自變量到所述MMC/SD^"口 ,以及針對將要經(jīng)由所述MMC/SD接口從所述外圍設(shè)備接收的引 導(dǎo)數(shù)據(jù)監(jiān)控數(shù)據(jù)總線。
39. —種具有MMC/SD接口的外圍設(shè)備,配置用于引導(dǎo)可引導(dǎo)主 機(jī)設(shè)備,該主機(jī)設(shè)備配置用于從具有MMC/SD接口的外圍設(shè)備被虧1 導(dǎo),其中所述外圍設(shè)備在操作條件寄存器中具有用于引導(dǎo)請求的附 加自變量,所述外圍設(shè)備包括MMC/SD接口,其包括電源端子、具有數(shù)據(jù)總線端子的數(shù)據(jù)總具有操作條件寄存器的外圍設(shè)備控制器,連接到所述MMC/SD 接口,以及存儲模塊,連接到所述外圍設(shè)備控制器,其中所述外圍設(shè)備在操作條件寄存器中設(shè)置有用于引導(dǎo)請求的 附加自變量,以及所述外圍設(shè)備配置用于在外圍設(shè)備的初始化過程之后在外圍設(shè)備處接收用于引導(dǎo) 請求的自變量,以及獲取和經(jīng)由所述MMC/SD接口發(fā)送來自外圍設(shè)備存儲模塊 的引導(dǎo)數(shù)據(jù)到所述主機(jī)設(shè)備。
40. 根據(jù)權(quán)利要求39所述的具有MMC/SD接口的外圍設(shè)備,其 中具有所述用于引導(dǎo)請求的自變量的所述操作條件寄存器實(shí)現(xiàn)為硬 編碼硬件組件,連接到所述外圍設(shè)備控制器或在其中實(shí)現(xiàn)。
41. 根據(jù)權(quán)利要求39所述的具有MMC/SD接口的外圍設(shè)備,其 中具有所述用于引導(dǎo)請求的自變量的所述操作條件寄存器實(shí)現(xiàn)為在 外圍設(shè)備控制器中運(yùn)行的軟件。
全文摘要
用于經(jīng)由接口從外圍設(shè)備引導(dǎo)主機(jī)設(shè)備的系統(tǒng)和方法,該接口例如MMC/SD接口,其具有電源端子,具有數(shù)據(jù)總線端子的數(shù)據(jù)總線,具有時鐘端子的時鐘線,以及具有命令端子的命令線。將電源提供給電源端子,并且在加電期間將MMC/SD或類似接口的命令端子設(shè)置為低。針對數(shù)據(jù)傳輸?shù)钠鹗嘉槐O(jiān)控數(shù)據(jù)總線。
文檔編號G06F9/445GK101361043SQ200680051271
公開日2009年2月4日 申請日期2006年11月27日 優(yōu)先權(quán)日2006年1月17日
發(fā)明者K·米利, M·阿弗奈南 申請人:諾基亞公司