亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種通過(guò)擴(kuò)展sd/mmc協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法

文檔序號(hào):6464118閱讀:115來(lái)源:國(guó)知局
專利名稱:一種通過(guò)擴(kuò)展sd/mmc協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法
技術(shù)領(lǐng)域
本發(fā)明涉及SD/MMC存儲(chǔ)卡領(lǐng)域,特別涉及一種通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí) 現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法。
背景技術(shù)
目前的SD/畫C等存儲(chǔ)卡只具備簡(jiǎn)單的存儲(chǔ)功能,它的一切行為都是由主機(jī) (H0ST)來(lái)控制。存儲(chǔ)卡只是用來(lái)存儲(chǔ)數(shù)據(jù),其主要功能就是數(shù)據(jù)的存儲(chǔ)及讀 取,主機(jī)發(fā)送寫命令,存儲(chǔ)卡按照地址進(jìn)行寫操作,主機(jī)發(fā)送讀命令,存儲(chǔ)卡 按照地址讀取數(shù)據(jù)并傳送給主機(jī),除此之外,存儲(chǔ)卡再無(wú)特點(diǎn)及優(yōu)勢(shì)。
存儲(chǔ)卡的磁盤結(jié)構(gòu)如圖1所示,包括主引導(dǎo)扇區(qū)、分區(qū)引導(dǎo)扇區(qū)、FAT表、 才艮目錄區(qū)、數(shù)據(jù)區(qū),各分區(qū)的主要功能如下
主引導(dǎo)扇區(qū)主引導(dǎo)記錄(MBR)和硬盤分區(qū)表(DPT);
分區(qū)引導(dǎo)扇區(qū)分區(qū)引導(dǎo)記錄;
FAT表文件分配表,用來(lái)記錄文件所在位置的表格,是FAT文件系統(tǒng)用來(lái) 記錄磁盤數(shù)據(jù)區(qū)簇鏈結(jié)構(gòu)的;
根目錄區(qū)存放根目錄下的文件(目錄)的屬性,文件系統(tǒng)以32個(gè)字節(jié)為 單位進(jìn)行文件目錄所占簇的分配,這32個(gè)字節(jié)以確定的偏移來(lái)定義本目錄下的 一個(gè)文件(或文件夾)的屬性;
數(shù)據(jù)區(qū)存放文件夾和文件。
根目錄區(qū)的結(jié)構(gòu)如圖2所示,在對(duì)某一個(gè)文件進(jìn)行操作時(shí),根據(jù)FAT表查 找該文件所在的簇,從而找到文件數(shù)據(jù)的存放地址,但這些查找的過(guò)程都是由 主機(jī)(HOST)來(lái)完成的,命令發(fā)送到存儲(chǔ)卡是直接的地址操作,所以存儲(chǔ)卡無(wú) 法知道主機(jī)是在對(duì)什么文件進(jìn)行操作,更新FAT表的時(shí)候也不知道是在更新哪 個(gè)文件的簇地址。主機(jī)(HOST)在寫文件的時(shí)候需要更新FAT表、目錄區(qū)和數(shù) 據(jù)區(qū),存儲(chǔ)卡雖然可以判斷更新的是什么區(qū)域,但不知道更新的數(shù)據(jù)內(nèi)容,如 果有應(yīng)用需要對(duì)數(shù)據(jù)內(nèi)容作處理,存儲(chǔ)卡就不能勝任了。
3主機(jī)與SD/醒C卡之間的命令傳輸如圖3、圖4所示,主機(jī)(HOST )通過(guò)CMD 信號(hào)線向SD/MMC卡發(fā)送命令,SD/固C卡通過(guò)CMD信號(hào)線對(duì)主機(jī)(HOST )發(fā)送的 前一個(gè)命令作出響應(yīng)。需要傳輸?shù)臄?shù)據(jù)將通過(guò)DAT信號(hào)線進(jìn)行傳送,直到主機(jī) (HOST)發(fā)出STOP命令,SD/固C卡停止傳輸數(shù)據(jù)。主機(jī)(HOST )在寫一個(gè)文件 的時(shí)候會(huì)發(fā)出多個(gè)寫命令和多個(gè)STOP命令,存儲(chǔ)卡無(wú)法判斷當(dāng)前的STOP命令 是寫某一塊數(shù)據(jù)的結(jié)束還是寫整個(gè)文件的結(jié)束。也就是說(shuō),當(dāng)需要對(duì)某一文件 進(jìn)行實(shí)時(shí)操作,例如實(shí)時(shí)加載水印的功能時(shí),存儲(chǔ)卡就無(wú)法知道什么時(shí)候開始 執(zhí)行操作(開始加水印),什么時(shí)候結(jié)束操作(停止加水印)。
綜上所述,傳統(tǒng)的SD/MMC存儲(chǔ)卡存在如下缺點(diǎn)
(1) 只能被動(dòng)的接受讀寫命令,按照主機(jī)發(fā)送的地址操作數(shù)據(jù);
(2) 無(wú)法判別操作的數(shù)據(jù)內(nèi)容;
(3) 不能對(duì)主機(jī)發(fā)送的命令進(jìn)行特殊解析,只能完成標(biāo)準(zhǔn)協(xié)議定義的功能;
(4) 存儲(chǔ)卡功能單一,只能作為存儲(chǔ)設(shè)備使用。

發(fā)明內(nèi)容
本發(fā)明的目的在于解決目前SD/MMC卡只能遵循標(biāo)準(zhǔn)協(xié)議進(jìn)行單一的讀、 寫操作,而不能實(shí)現(xiàn)用戶更高需求的功能的缺點(diǎn),提供一種通過(guò)擴(kuò)展SD/MMC 協(xié)議來(lái)實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)SD/MMC存儲(chǔ)卡進(jìn)行特殊控制的方法,使用這種方法可 以實(shí)現(xiàn)除讀、寫功能以外的其它特殊、復(fù)雜的需求。
本發(fā)明的技術(shù)方案如下 一種通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ) 卡控制的方法,該方法將SD/MMC協(xié)議所規(guī)定的讀、寫命令的地址位Argument 中的高位位作為擴(kuò)展命令的識(shí)別標(biāo)識(shí),利用擴(kuò)展命令來(lái)控制存儲(chǔ)卡進(jìn)行除單 一的讀、寫數(shù)據(jù)功能以外的特殊操作。
進(jìn)一步,在上述通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法 中,所述的地址位Argument中的高位位是指超過(guò)存儲(chǔ)卡最大容量的地址位。
如上所述的通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法,其 中,針對(duì)擴(kuò)展寫命令,定義主機(jī)傳送給存儲(chǔ)卡的寫命令的地址位Argument 中的高位位為擴(kuò)展命令的識(shí)別標(biāo)識(shí),在隨后主機(jī)傳送給存儲(chǔ)卡的數(shù)據(jù)塊中定
4義擴(kuò)展命令的參數(shù)以定義存儲(chǔ)卡執(zhí)行的相應(yīng)擴(kuò)展功能,當(dāng)存儲(chǔ)卡接收到寫命
令后,首先通過(guò)Argument的高位位判斷是擴(kuò)展寫命令,然后解析隨后主機(jī)傳 送到存儲(chǔ)卡的數(shù)據(jù)塊中的擴(kuò)展命令的參數(shù),并根據(jù)擴(kuò)展命令的參數(shù)執(zhí)行相應(yīng) 的擴(kuò)展命令,執(zhí)行完的結(jié)果等待主機(jī)用擴(kuò)展讀命令來(lái)讀取。
如上所述的通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法,其 中,針對(duì)擴(kuò)展讀命令,定義主機(jī)傳送給存儲(chǔ)卡的讀命令的地址位Argument 中的高位位為擴(kuò)展讀命令的識(shí)別標(biāo)識(shí),當(dāng)存儲(chǔ)卡接收到讀命令后,首先通過(guò) Argument的高位位判斷是擴(kuò)展讀命令,然后把上一條擴(kuò)展命令的執(zhí)行結(jié)果存 放在返回的數(shù)據(jù)塊中,主機(jī)取回這個(gè)數(shù)據(jù)塊,對(duì)其中的數(shù)據(jù)進(jìn)行解析,得到 存儲(chǔ)卡的執(zhí)行結(jié)果。
本發(fā)明的有益效果如下該方法在嚴(yán)格遵守SD/MMC協(xié)議規(guī)范的基礎(chǔ)上使 用地址位中目前沒(méi)有使用的高位位來(lái)實(shí)現(xiàn)特殊功能的命令擴(kuò)展,非常簡(jiǎn)單易 行,使得數(shù)碼設(shè)備可以通過(guò)擴(kuò)展協(xié)議控制存儲(chǔ)卡執(zhí)行除讀、寫數(shù)據(jù)以外的特 定功能,從而滿足用戶在使用中對(duì)存儲(chǔ)卡的各種特殊、復(fù)雜的要求。


圖1為存儲(chǔ)卡的磁盤結(jié)構(gòu)示意圖2為存儲(chǔ)卡的根目錄區(qū)結(jié)構(gòu)示意圖3為主機(jī)與SD/醒C卡之間的寫傳輸過(guò)程示意圖4為主機(jī)與SD/薩C卡之間的讀傳輸過(guò)程示意圖5為SD/廳C的CMD命令格式;
圖6為argument地址參數(shù)示意圖7為SD/畫C卡區(qū)分普通指令和擴(kuò)展指令的流程圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)的描述。 SD/MMC的CMD命令格式如圖5所示,具體說(shuō)明如下 * Start bit:起始位,值為'0,; 參Transmission bit: l示傳豐命開i會(huì)6勺方向host= '1,;* Command index:命令索引(CMD17單塊讀、CMD18多塊讀,CMD24單塊寫、 CMD2 5多塊寫,大多數(shù)主機(jī)HOST都是使用CMD18和CMD2 5 );
Argument:有些命令需要argument,如讀、寫命令,這個(gè)argument中存 放的是地址;
CRC7: 7bit的CRC氺文'瞼位;
* End bit:結(jié)束位,值為T 。
大小由公式2REA°iLEN'得出,READ—BL—LEN的取值范圍是0 - 15,即數(shù)據(jù)塊大小為 1Byte-16kByte, 215為EXT-CSD使用,根據(jù)SD/醒C的協(xié)議規(guī)定,所有卡片都必 須支持且默認(rèn)支持操作大小為512Byte的數(shù)據(jù)塊。主機(jī)(HOST)在發(fā)讀、寫命 令時(shí),傳輸?shù)臄?shù)據(jù)塊大小至少為512Byte。
SD/畫C存儲(chǔ)卡在讀寫數(shù)據(jù)的時(shí)候都是主機(jī)(HOST )發(fā)送讀寫命令來(lái)完成的, 發(fā)送的讀寫命令格式如圖5所示,讀寫數(shù)據(jù)所要操作的地址都是用argument參 數(shù)來(lái)傳遞的,如argument參數(shù)為0x00019000,那么主機(jī)(HOST )需要讀寫的地 址為0x00019000,也就是第200個(gè)扇區(qū)(16進(jìn)制19000換算為10進(jìn)制是102400, 102400/512=200 )。
Argument的32bit的地址可以對(duì)232=4G的磁盤空間進(jìn)行操作,如有擴(kuò)展協(xié) 議的需要,就擴(kuò)展32位地址中沒(méi)有使用的高位位來(lái)作為擴(kuò)展命令的識(shí)別標(biāo)識(shí)使 用。如果存儲(chǔ)卡的最大容量是1G,那么在對(duì)存儲(chǔ)卡的數(shù)據(jù)操作中只需要使用30 位的地址空間(23°=1G),因此可以利用沒(méi)有用到的高2bit (bit31, bit3U作為 擴(kuò)展命令的識(shí)別標(biāo)識(shí)。擴(kuò)展SD/廳C的讀寫命令協(xié)議實(shí)際就是利用命令傳輸?shù)牡?址位中沒(méi)有使用的高位位,即超過(guò)存儲(chǔ)卡最大容量的地址位來(lái)作為擴(kuò)展命令的 識(shí)別標(biāo)識(shí),主機(jī)(HOST)利用擴(kuò)展命令來(lái)控制存儲(chǔ)卡進(jìn)行一些特殊的操作。這 些特殊的操作可以根據(jù)需要任意定義,并不固定。如圖7所示,存儲(chǔ)卡接收到 主機(jī)發(fā)送的命令后,通過(guò)高位位判斷是否是擴(kuò)展命令,如果不是則按照正常的 讀寫命令流程處理,如果是則按照擴(kuò)展命令的流程處理。
針對(duì)擴(kuò)展寫命令,首先利用寫命令中的argument的沒(méi)有使用的高位位作為 擴(kuò)展寫命令的識(shí)別標(biāo)識(shí),例如,存儲(chǔ)卡的最大容量為1G,傳送的寫命令的地址 argument定義為0x40000200,擴(kuò)展bit30為l,定義為擴(kuò)展寫命令,然后利用主機(jī)(HOST )
展命令以通知存儲(chǔ)卡執(zhí)行相應(yīng)的擴(kuò)展功能。當(dāng)存儲(chǔ)卡接收到這個(gè)地址的寫命令 后首先判斷出是擴(kuò)展寫命令,并解析出隨后收到的數(shù)據(jù)塊中的命令參數(shù),然后 根據(jù)命令參數(shù)執(zhí)行相應(yīng)的擴(kuò)展命令。存儲(chǔ)卡在收到上述寫命令后其實(shí)并沒(méi)有真 正地執(zhí)行寫命令,而是根據(jù)定義的擴(kuò)展命令執(zhí)行擴(kuò)展功能,執(zhí)行完的結(jié)果等待 主機(jī)(HOST)用擴(kuò)展讀命令來(lái)取。上述具體的擴(kuò)展命令參數(shù)和擴(kuò)展命令可以根 據(jù)需要任意定義,主機(jī)和存儲(chǔ)卡遵循相應(yīng)的定義就可實(shí)現(xiàn)除讀寫操作之外的擴(kuò) 展功能。
針對(duì)擴(kuò)展讀命令的操作,利用讀命令中的argument的高位位作為擴(kuò)展讀命 令的識(shí)別標(biāo)識(shí),例如讀命令中的地址argument定義為0x40000200,擴(kuò)展bit30 為l,定義為取回上一條擴(kuò)展命令的執(zhí)行結(jié)果。當(dāng)存儲(chǔ)卡接收到這個(gè)地址的讀命 令時(shí)首先判斷是擴(kuò)展讀命令,然后把上一條擴(kuò)展命令的執(zhí)行結(jié)果存放在返回的 數(shù)據(jù)塊中,主機(jī)(HOST)取回這個(gè)數(shù)據(jù)塊,對(duì)其中的數(shù)據(jù)進(jìn)行解析,得到存儲(chǔ) 卡的執(zhí)行結(jié)果。
例如某一應(yīng)用需要上電時(shí)完成主機(jī)與存儲(chǔ)卡之間的安全認(rèn)證,如果認(rèn)證 不通過(guò)則不能對(duì)卡片進(jìn)行讀寫操作,那么定義寫命令的Argument值為 0x40000200作為擴(kuò)展命令的識(shí)別標(biāo)識(shí),并在主機(jī)傳送給存儲(chǔ)卡的數(shù)據(jù)塊中定義 擴(kuò)展命令參數(shù)為認(rèn)證命令,卡在接收到主機(jī)發(fā)送的CMD后,首先通過(guò)Argument 判斷是擴(kuò)展寫命令,然后根據(jù)數(shù)據(jù)塊中的擴(kuò)展命令參數(shù)判斷是認(rèn)證命令,接著 存儲(chǔ)卡就跳轉(zhuǎn)到認(rèn)證命令的處理流程執(zhí)行主機(jī)與存儲(chǔ)卡之間的認(rèn)證操作,然后 主機(jī)通過(guò)擴(kuò)展讀命令將認(rèn)證命令的執(zhí)行結(jié)果取回。主機(jī)和存儲(chǔ)卡之間的認(rèn)證通 過(guò)后主機(jī)和存儲(chǔ)卡之間才可以進(jìn)行正常讀寫操作,否則不能進(jìn)行正常的讀寫搡 作。普通的讀寫命令是無(wú)法執(zhí)行這樣的特殊功能,只有使用擴(kuò)展命令才能完成。
考慮到在此公開的對(duì)本發(fā)明的描述和特殊的實(shí)施例,本發(fā)明的其他實(shí)施例 對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō)是顯而易見的。這些說(shuō)明和實(shí)施例僅作為例子來(lái)考 慮,它們都屬于由所附權(quán)利要求所指示的本發(fā)明的保護(hù)范圍和精神之內(nèi)。
權(quán)利要求
1.一種通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法,其特征在于該方法將SD/MMC協(xié)議所規(guī)定的讀、寫命令的地址位Argument中的高位位作為擴(kuò)展命令的識(shí)別標(biāo)識(shí),利用擴(kuò)展命令來(lái)控制存儲(chǔ)卡進(jìn)行除單一的讀、寫數(shù)據(jù)功能以外的特殊操作。
2. 如權(quán)利要求1所述的通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控 制的方法,其特征在于所述的地址位Argument中的高位位是指超過(guò)存儲(chǔ)卡 最大容量的地址位。
3. 如權(quán)利要求1或2所述的通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ) 卡控制的方法,其特征在于針對(duì)擴(kuò)展寫命令,定義主機(jī)傳送給存儲(chǔ)卡的寫 命令的地址位Argument中的高位位為擴(kuò)展命令的識(shí)別標(biāo)識(shí),在隨后主機(jī)傳送 給存儲(chǔ)卡的數(shù)據(jù)塊中定義擴(kuò)展命令的參數(shù)以定義存儲(chǔ)卡執(zhí)行的相應(yīng)擴(kuò)展功 能,當(dāng)存儲(chǔ)卡接收到寫命令后,首先通過(guò)Argument的高位位判斷是擴(kuò)展寫命 令,然后解析隨后主機(jī)傳送到存儲(chǔ)卡的數(shù)據(jù)塊中的擴(kuò)展命令的參數(shù),并根據(jù) 擴(kuò)展命令的參數(shù)執(zhí)行相應(yīng)的擴(kuò)展命令,執(zhí)行完的結(jié)果等待主機(jī)用擴(kuò)展讀命令 來(lái)讀取。
4. 如權(quán)利要求1或2所述的通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ) 卡控制的方法,其特征在于針對(duì)擴(kuò)展讀命令,定義主機(jī)傳送給存儲(chǔ)卡的讀 命令的地址位Argument中的高位位為擴(kuò)展讀命令的識(shí)別標(biāo)識(shí),當(dāng)存4諸卡4姿收 到讀命令后,首先通過(guò)Argument的高位位判斷是擴(kuò)展讀命令,然后把上一條 擴(kuò)展命令的執(zhí)行結(jié)果存放在返回的數(shù)據(jù)塊中,主機(jī)取回這個(gè)數(shù)據(jù)塊,對(duì)其中 的數(shù)據(jù)進(jìn)行解析,得到存儲(chǔ)卡的執(zhí)行結(jié)果。
5. 如權(quán)利要求3所述的通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控 制的方法,其特征在于針對(duì)擴(kuò)展讀命令,定義主機(jī)傳送給存儲(chǔ)卡的讀命令 的地址位Argument中的高位位為擴(kuò)展讀命令的識(shí)別標(biāo)識(shí),當(dāng)存儲(chǔ)卡接收到讀 命令后,首先通過(guò)Argument的高位位判斷是擴(kuò)展讀命令,然后把上一條擴(kuò)展 命令的執(zhí)行結(jié)果存放在返回的數(shù)據(jù)塊中,主機(jī)取回這個(gè)數(shù)據(jù)塊,對(duì)其中的數(shù) 據(jù)進(jìn)行解析,得到存儲(chǔ)卡的執(zhí)行結(jié)果。
全文摘要
本發(fā)明涉及SD/MMC存儲(chǔ)卡領(lǐng)域,特別涉及一種通過(guò)擴(kuò)展SD/MMC協(xié)議實(shí)現(xiàn)數(shù)碼設(shè)備對(duì)存儲(chǔ)卡控制的方法。該方法將SD/MMC協(xié)議所規(guī)定的讀、寫命令的地址位Argument中的高位位作為擴(kuò)展命令的識(shí)別標(biāo)識(shí),并對(duì)擴(kuò)展命令的參數(shù)進(jìn)行定義,利用擴(kuò)展命令來(lái)控制存儲(chǔ)卡進(jìn)行除單一的讀、寫數(shù)據(jù)功能以外的特殊操作。本發(fā)明非常簡(jiǎn)單易行,使得數(shù)碼設(shè)備可以通過(guò)擴(kuò)展協(xié)議控制存儲(chǔ)卡執(zhí)行除讀、寫數(shù)據(jù)以外的特定功能,從而滿足用戶在使用中對(duì)存儲(chǔ)卡的各種特殊、復(fù)雜的要求。
文檔編號(hào)G06F3/08GK101587427SQ200810112408
公開日2009年11月25日 申請(qǐng)日期2008年5月23日 優(yōu)先權(quán)日2008年5月23日
發(fā)明者璐 徐, 華 閆 申請(qǐng)人:鳳凰微電子(中國(guó))有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1