讀、寫(xiě)、擦除超時(shí)條件
如果主機(jī)在給定的超時(shí)時(shí)間內(nèi)沒(méi)有收到任何響應(yīng),則應(yīng)假定該卡不會(huì)響應(yīng),并嘗試恢復(fù)(例如重置卡,電源周期,拒絕等)。
Read
對(duì)于標(biāo)準(zhǔn)容量SD存儲(chǔ)卡,讀取操作的超時(shí)條件發(fā)生的時(shí)間(與卡無(wú)關(guān))要么比下面給出的這些操作的典型訪問(wèn)時(shí)間長(zhǎng)100倍,要么長(zhǎng)100毫秒(兩者中較低者)。讀訪問(wèn)時(shí)間定義為CSD參數(shù)TAAC和NSAC給出的兩個(gè)時(shí)間之和。在單讀操作的情況下,這些卡參數(shù)定義了read命令的結(jié)束位和數(shù)據(jù)塊的開(kāi)始位之間的典型延遲。在多讀操作的情況下,它們還定義了數(shù)據(jù)塊的結(jié)束位和下一個(gè)數(shù)據(jù)塊的開(kāi)始位之間的典型延遲High Capacity SD Memory Card和Extended Capacity SD Memory Card表示TAAC和NSA作為固定值。對(duì)于單個(gè)和多個(gè)讀操作,主機(jī)應(yīng)該使用100毫秒的超時(shí)(最小),而不是使用TAAC和NSAC。
Write
寫(xiě)對(duì)于標(biāo)準(zhǔn)容量SD存儲(chǔ)卡,發(fā)生寫(xiě)操作的超時(shí)條件的時(shí)間(與卡無(wú)關(guān))要么比下面給出的這些操作的典型程序時(shí)間長(zhǎng)90倍,要么長(zhǎng)250毫秒(兩者中較低的一個(gè))。CSD中的R2w FACTOR字段用于計(jì)算讀訪問(wèn)時(shí)間乘以該因子得到的典型塊程序時(shí)間,它適用于所有寫(xiě)命令(e.g. SET(CLR)_ write PROTEGT ,program_CSD和the block write commands)。
High Capacity SD Memory Card和Extended Capacity SD Memory Card的R2W_FACTOR為固定值。
對(duì)于高容量SD存儲(chǔ)卡,所有寫(xiě)操作的最大繁忙長(zhǎng)度定義為250ms。
在SDXC卡的情況下,該卡應(yīng)該盡量保持寫(xiě)操作的忙指示不超過(guò)250ms,如果該卡無(wú)法維持250ms的忙操作,則該卡可以在以下場(chǎng)景中顯示高達(dá)500ms的寫(xiě)忙指示,包括單塊和多塊寫(xiě):
a)任何寫(xiě)操作中最長(zhǎng)500ms的最后一次繁忙,包括單塊和多塊寫(xiě)。
b)當(dāng)CMD12停止多個(gè)塊寫(xiě)時(shí),CMD12響應(yīng)的繁忙時(shí)間高達(dá)500ms。
c) CMD23停止寫(xiě)多個(gè)塊時(shí),最后一個(gè)數(shù)據(jù)塊后的繁忙時(shí)間高達(dá)500ms。
d)除以下情況外,多塊寫(xiě)入時(shí)塊間隙的忙指示最長(zhǎng)可達(dá)250ms。當(dāng)卡連續(xù)執(zhí)行兩個(gè)塊寫(xiě)(2*512Bytes)并且跨越物理塊邊界時(shí),每個(gè)塊后的繁忙時(shí)間可顯示為500ms。
特別是無(wú)論上述定義如何,CMD20指定的速度級(jí)寫(xiě)入模式在任何情況下都應(yīng)保持寫(xiě)忙,最長(zhǎng)可達(dá)250ms,直到指示速度級(jí)寫(xiě)入結(jié)束。
在多塊寫(xiě)操作中有兩種類(lèi)型的業(yè)務(wù)。
(1) block qap(不帶CMD12)寫(xiě)忙最大250ms
(2) CMD12后寫(xiě)忙最大250ms (SDXC為500ms)
如果在多塊寫(xiě)操作繁忙期間發(fā)出CMD12,則主機(jī)超時(shí)計(jì)數(shù)器為從CMD12的響應(yīng)中測(cè)量250ms (SDXC為500ms)的超時(shí)時(shí)間。
應(yīng)用注意:
主機(jī)應(yīng)該為寫(xiě)操作使用固定超時(shí),而不是使用從R2W FACTOR參數(shù)計(jì)算的超時(shí)。
強(qiáng)烈建議主機(jī)實(shí)現(xiàn)超過(guò)500ms的超時(shí)值,即使顯示卡顯示的繁忙長(zhǎng)度為250ms。
即使卡支持Speed Class,任何多塊寫(xiě)操作都可能表示一個(gè)繁忙的時(shí)間段,最長(zhǎng)可達(dá)250ms。一個(gè)AU上的繁忙時(shí)段的總和受速度等級(jí)的限制。
Erase
如果卡在SD Status中支持擦除超時(shí)計(jì)算參數(shù),主機(jī)應(yīng)該使用這些參數(shù)來(lái)確定擦除超時(shí)。如果卡不支持這些參數(shù),則可以通過(guò)塊寫(xiě)延遲來(lái)估計(jì)擦除超時(shí)。
一個(gè)erase命令的持續(xù)時(shí)間可以用需要擦除的寫(xiě)塊(write_BL)的數(shù)量乘以250ms來(lái)估計(jì)。
Commands
命令類(lèi)型
有四種命令定義來(lái)控制SD存儲(chǔ)卡:
廣播命令(bc),無(wú)響應(yīng)-廣播特性僅在主機(jī)中的所有CMD行連接在一起時(shí)才會(huì)出現(xiàn)。如果它們是分開(kāi)的,那么每一張牌將輪流單獨(dú)接受它。
帶響應(yīng)的廣播命令(bcr)所有卡同時(shí)響應(yīng)-由于SD存儲(chǔ)卡中沒(méi)有Open Drain模式,這種類(lèi)型的命令只能在所有CMD行分開(kāi)時(shí)使用-該命令將被每個(gè)卡單獨(dú)接受和響應(yīng)。
尋址(點(diǎn)對(duì)點(diǎn))命令(ac)在DAT上沒(méi)有數(shù)據(jù)傳輸?shù)刂?/p>
(點(diǎn)對(duì)點(diǎn))數(shù)據(jù)傳輸命令(adtc)數(shù)據(jù)在DAT上傳輸所有命令和響應(yīng)都通過(guò)SD存儲(chǔ)卡的CMD行發(fā)送。的command傳輸總是從與命令碼字對(duì)應(yīng)的位串的左位開(kāi)始。
命令格式
所有命令都有固定的48位代碼長(zhǎng)度,需要1.92 us@ 25 MHz和0.96 us@ 50 MHz的傳輸時(shí)間。
命令總是以起始位(always 0)開(kāi)始,然后是指示傳輸方向的位(host= 1)。接下來(lái)的6位表示命令的索引,該值被解釋為二進(jìn)制編碼數(shù)(0到63之間)。一些命令需要一個(gè)參數(shù)(例如地址),它是由32位編碼的。
上表中以“x”表示的值表示該變量依賴于命令。所有的命令都受到CRC的保護(hù)。每個(gè)命令碼字以結(jié)束位(always 1)結(jié)束。
所有命令及其參數(shù)可以參考SD NAND存儲(chǔ)功能描述(14)命令
審核編輯 黃宇
-
存儲(chǔ)
+關(guān)注
關(guān)注
13文章
4469瀏覽量
86915 -
SDIO接口
+關(guān)注
關(guān)注
0文章
8瀏覽量
2468 -
SD NAND
+關(guān)注
關(guān)注
0文章
86瀏覽量
1409
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
NAND Flash與SD NAND的存儲(chǔ)扇區(qū)架構(gòu)差異

Arduino程序:實(shí)現(xiàn)SD NAND(貼片sd卡)的讀寫(xiě)功能
國(guó)產(chǎn)安路FPGA SD NAND FLASH 初步描述
瀚海微SD NAND存儲(chǔ)功能描述(28)RCA Registers

瀚海微SD NAND存儲(chǔ)功能描述(26)CSD Registers

瀚海微SD NAND存儲(chǔ)功能描述(25)SD Registers

瀚海微SD NAND存儲(chǔ)功能描述(24)擦除超時(shí)計(jì)算

瀚海微SD NAND存儲(chǔ)功能描述(21)數(shù)據(jù)讀寫(xiě)

瀚海微SD NAND存儲(chǔ)功能描述(18)命令類(lèi)e

瀚海微SD NAND存儲(chǔ)功能描述(11)命令系統(tǒng)CMD8

瀚海微SD NAND存儲(chǔ)功能描述(9)切換功能

瀚海微SD NAND應(yīng)用存儲(chǔ)功能描述(7)擦除和寫(xiě)保護(hù)

瀚海微SD NAND應(yīng)用存儲(chǔ)功能描述(6)讀寫(xiě)數(shù)據(jù)

瀚海微SD NAND應(yīng)用之SD協(xié)議存儲(chǔ)功能描述2 初始化命令

評(píng)論