一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

呂輝 ? 來源:jf_40298777 ? 作者:jf_40298777 ? 2024-08-06 14:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

寬總線選擇/取消

選擇寬總線(4位總線寬度)操作模式可以使用AcMD6選擇/取消選擇。默認(rèn)總線上電或GO IDLE (CMDO)后的寬度為1位總線寬度。

要改變母線寬度需要滿足兩個(gè)條件:

a)卡處于“傳輸狀態(tài)”。

b)卡未鎖定被鎖定的卡將響應(yīng)ACMD6為非法命令。

2GB卡

要制作2GByte卡,最大塊長(zhǎng)度(READ BL LEN- write BL LEN)應(yīng)設(shè)置為1024字節(jié)。但是,CMD16設(shè)置的塊長(zhǎng)度最多為512字節(jié),以保持與512字節(jié)最大塊長(zhǎng)度卡(小于等于2GByte卡)的一致性。

數(shù)據(jù)讀取

當(dāng)沒有數(shù)據(jù)傳輸時(shí),通過上拉使數(shù)據(jù)總線電平高。傳輸?shù)臄?shù)據(jù)塊由起始位(低1位或低4位)和連續(xù)數(shù)據(jù)流組成。數(shù)據(jù)流包含有效載荷數(shù)據(jù)(如果使用off-card ECC is used,則包含糾錯(cuò)位)。數(shù)據(jù)流以endl位結(jié)束(1位或4位HIGH).

數(shù)據(jù)傳輸與時(shí)鐘信號(hào)同步。面向塊的數(shù)據(jù)傳輸?shù)挠行лd荷由1位或4位CRC校驗(yàn)和保護(hù)。關(guān)閉電源可能會(huì)中斷SD存儲(chǔ)卡的讀取操作。SDl存儲(chǔ)卡確保在主機(jī)發(fā)出的除寫或擦除操作外的所有情況下,即使在突然關(guān)閉或刪除的情況下,數(shù)據(jù)也不會(huì)被破壞。如果發(fā)生BLOCK_LEN_ERROR或ADDRESS ERROR,并且沒有進(jìn)行數(shù)據(jù)傳輸,則拒絕讀取命令。

塊讀取

塊讀取是面向塊的數(shù)據(jù)傳輸。數(shù)據(jù)傳輸?shù)幕締挝皇且粋€(gè)塊,其最大大小始終為512字節(jié)。較小的塊,其起始和結(jié)束地址完全包含在512字節(jié)邊界內(nèi),可以傳輸。

CMD16設(shè)置的塊長(zhǎng)度可以設(shè)置為512字節(jié),與READ_BL_LEN無關(guān)。CRC被附加到每個(gè)塊的末尾,以確保數(shù)據(jù)傳輸?shù)耐暾?。CMD17 (READ_SINGLE_BLOCK)發(fā)起一個(gè)塊讀取,完成傳輸后,卡返回到傳輸狀態(tài)。CMD18 (READ_MULTIPLE_BLOCK)啟動(dòng)幾個(gè)連續(xù)塊的傳輸。塊將持續(xù)傳輸,直到發(fā)出停止傳輸命令(CMD12)。l由于串行命令傳輸,stop命令有執(zhí)行延遲。數(shù)據(jù)傳輸在stop命令結(jié)束位之后停止。

當(dāng)使用CMD18讀取用戶區(qū)的最后一塊時(shí),即使順序正確,主機(jī)也應(yīng)該忽略可能發(fā)生的OUT_OF_RANGE錯(cuò)誤。

如果主機(jī)使用的部分塊的累積長(zhǎng)度不是塊對(duì)齊的,并且不允許塊錯(cuò)位,卡應(yīng)該在第一個(gè)錯(cuò)位塊的開始處檢測(cè)到塊錯(cuò)位,在狀態(tài)寄存器中設(shè)置ADDRESS_ERROR錯(cuò)誤位,中止傳輸,并在Data State中等待停止命令。

下方圖格定義了當(dāng)局部塊訪問被啟用時(shí)的卡片行為。

如果不對(duì)齊的塊是命令的第一個(gè)數(shù)據(jù)塊(即在對(duì)命令的實(shí)際響應(yīng)中報(bào)告了i.e.ADDRESS_ERROR),則不傳輸數(shù)據(jù),卡保持在TRAN狀態(tài)。

wKgaomaxwIiACRhXAAC7cBGbp2Y569.png

*1:“當(dāng)前塊欄”大小由CMD16設(shè)置或更改。如果value小于或等于512字節(jié)(與Misalign和Partial選項(xiàng)沒有關(guān)系),則設(shè)置無錯(cuò)誤。

*2:當(dāng)Blocklen大小數(shù)據(jù)范圍超過512字節(jié)的塊邊界時(shí),卡片輸出數(shù)據(jù)直到512字節(jié)的塊邊界,此時(shí)數(shù)據(jù)無效,也可能出現(xiàn)CRC錯(cuò)誤??▽⒃谙乱粋€(gè)命令響應(yīng)中發(fā)送“ADDRESS_ERROR”。主機(jī)應(yīng)該發(fā)出CMD12來恢復(fù)。

數(shù)據(jù)寫入

數(shù)據(jù)傳輸格式與數(shù)據(jù)讀取格式類似。對(duì)于面向塊的寫數(shù)據(jù)傳輸,CRC校驗(yàn)位被添加到每個(gè)數(shù)據(jù)塊中。在寫操作之前,卡對(duì)每個(gè)接收到的數(shù)據(jù)塊執(zhí)行1位或4位CRC奇偶校驗(yàn)。通過這種機(jī)制,可以防止寫入錯(cuò)誤傳輸?shù)臄?shù)據(jù)。如果發(fā)生BLOCK_LEN_ERROR或ADDRESS_ERROR,并且沒有進(jìn)行數(shù)據(jù)傳輸,則拒絕寫命令。

塊的寫入

在塊寫入(CMD24 - 27,42,56 (w))期間,一個(gè)或多個(gè)數(shù)據(jù)塊從主機(jī)傳輸?shù)娇?,主機(jī)在每個(gè)塊的末尾附加1或4位CRC。無論WRITE_BL_LEN設(shè)置為1k還是2k字節(jié),支持塊寫的卡都要求CMD16設(shè)置的block Length為512字節(jié)。下方表格定義了當(dāng)部分塊訪問被禁用(WRITE_BL_PARTIAL = 0)時(shí)卡的行為。

wKgZomaxwKCAIf3wAAC8Bhlbd-Q405.png

*1:“當(dāng)前塊欄”大小由CMD16設(shè)置或更改。如果value小于512字節(jié)(與Misalign和Partial選項(xiàng)沒有關(guān)系),則設(shè)置無錯(cuò)誤。然后在寫命令執(zhí)行時(shí)測(cè)試“當(dāng)前Blocklen”大小。

*2:如果當(dāng)前的Blocklen不是這個(gè)值,卡在寫命令響應(yīng)上指示“BLOcK_LEN_ERROR”。

*3:如果起始地址不是這個(gè)值,卡將在寫命令響應(yīng)中發(fā)送“ADDRESS_ERROR”。

如果允許WRITE_BL_PARTIAL(=1),那么也可以使用更小的塊,最高分辨率為一個(gè)字節(jié)。如果CRC失敗,卡應(yīng)在DAT線上指示失敗€;傳輸?shù)臄?shù)據(jù)將被丟棄而不被寫入,所有進(jìn)一步傳輸?shù)膲K(在多個(gè)塊中)將被寫入模式)將被忽略。

為了提高寫操作的速度,建議使用多個(gè)塊寫命令,而不是連續(xù)的單個(gè)寫命令。如果主機(jī)使用的部分塊的累計(jì)長(zhǎng)度沒有塊對(duì)齊,并且不允許塊錯(cuò)位(CSD參數(shù)WRITE_BLK_MISALIGN未設(shè)置),則卡應(yīng)在第一個(gè)錯(cuò)位塊開始之前檢測(cè)到塊錯(cuò)位錯(cuò)誤并中止編程。

卡應(yīng)該在狀態(tài)寄存器中設(shè)置ADDRESS_ERROR錯(cuò)誤位,同時(shí)忽略所有進(jìn)一步的數(shù)據(jù)傳輸,在Receive-data-State中等待停止命令。

注意,第一個(gè)數(shù)據(jù)塊對(duì)于寫命令是不對(duì)齊的(即在寫命令的實(shí)際響應(yīng)中報(bào)告i.e.ADDRESS_ERROR),卡保持在tran狀態(tài),沒有數(shù)據(jù)被編程。如果主機(jī)試圖在寫保護(hù)區(qū)域上寫,寫操作也會(huì)被終止。然而,在這種情況下,卡應(yīng)該設(shè)置WP_VIOLATION位。

CSD寄存器的編程不需要先前的塊長(zhǎng)度設(shè)置。傳輸?shù)臄?shù)據(jù)也受CRC保護(hù)。如果CSD寄存器的一部分存儲(chǔ)在ROM中,那么這個(gè)不可改變的部分應(yīng)與接收緩沖區(qū)的相應(yīng)部分相匹配。如果匹配失敗,那么卡將報(bào)告一個(gè)錯(cuò)誤,并且不會(huì)更改任何寄存器內(nèi)容。

有些卡可能需要很長(zhǎng)且不可預(yù)測(cè)的時(shí)間來寫入數(shù)據(jù)塊。在接收到數(shù)據(jù)塊并完成CRC檢查后,如果寫緩沖區(qū)已滿并且無法接受來自新WRITE_BLOCK命令的新數(shù)據(jù),則卡將開始寫入并保持DATO低電平。主機(jī)可以在任何時(shí)候用SEND_STATUS命令(CMD13)輪詢卡片的狀態(tài),卡片將用它的狀態(tài)進(jìn)行響應(yīng)。狀態(tài)位READY_FOR_DATA表示卡是否可以接受新數(shù)據(jù),或者寫過程是否仍在進(jìn)行中。

主機(jī)可以通過發(fā)出CMD7(選擇不同的卡)來取消卡的選擇,這將使卡進(jìn)入斷開狀態(tài)并釋放數(shù)據(jù)線而不中斷寫操作。當(dāng)重新選擇卡時(shí),如果編程仍在進(jìn)行中并且寫緩沖區(qū)不可用,它將通過將DAT拉到低來重新激活忙指示。

實(shí)際上,主機(jī)可以同時(shí)對(duì)多張卡進(jìn)行寫操作,并有互留過程。交錯(cuò)過程可以通過在其他卡忙時(shí)單獨(dú)訪問每個(gè)卡來完成。這個(gè)過程可以通過適當(dāng)?shù)腃MD和DATO-3線操作(斷開忙卡)來完成。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲(chǔ)
    +關(guān)注

    關(guān)注

    13

    文章

    4533

    瀏覽量

    87466
  • SD NAND
    +關(guān)注

    關(guān)注

    0

    文章

    93

    瀏覽量

    1503
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    NAND Flash與SD NAND存儲(chǔ)扇區(qū)架構(gòu)差異

    NAND Flash?和?SD卡(SD NAND)的存儲(chǔ)扇區(qū)分配表都是用于管理存儲(chǔ)設(shè)備中扇區(qū)的分
    的頭像 發(fā)表于 03-13 15:20 ?1144次閱讀
    <b class='flag-5'>NAND</b> Flash與<b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>的<b class='flag-5'>存儲(chǔ)</b>扇區(qū)架構(gòu)差異

    Nand flash 和SD卡(SD NAND存儲(chǔ)扇區(qū)分配表異同

    Flash 和 SD卡(SD NAND)的存儲(chǔ)扇區(qū)分配表都是用于管理存儲(chǔ)設(shè)備中扇區(qū)的分配信息。它們記錄了哪些扇區(qū)已被使用、哪些是空閑的,以
    發(fā)表于 03-13 10:45

    關(guān)于SD NAND 的概述

    與設(shè)計(jì)特點(diǎn)   定義及別稱:SD NAND也被稱為貼片式T卡、貼片式TF卡或貼片式SD卡等,它是一種將傳統(tǒng)的TF/SD功能集成進(jìn)一個(gè)
    發(fā)表于 12-06 11:22

    國(guó)產(chǎn)安路FPGA SD NAND FLASH 初步描述

    NAND FLASH具有還有壞塊管理,數(shù)據(jù)ECC功能和異常掉電保證數(shù)據(jù)安全存儲(chǔ)功能。封裝尺寸
    發(fā)表于 10-16 18:12

    瀚海SD NAND存儲(chǔ)功能描述(28)RCA Registers

    CMD7將所有卡設(shè)置為standby狀態(tài)。 DSR register (Optional) 后面的內(nèi)容會(huì)詳細(xì)描述了16位驅(qū)動(dòng)級(jí)寄存器。它可以選擇性地用于改善擴(kuò)展操作條件下的總線性能(取決于總線長(zhǎng)度、傳輸
    的頭像 發(fā)表于 09-23 10:15 ?506次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(28)RCA Registers

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

    CSD Register 卡片專用數(shù)據(jù)寄存器提供有關(guān)訪問卡片內(nèi)容的信息。CSD定義了數(shù)據(jù)格式、糾錯(cuò)類型、最大數(shù)據(jù)訪問時(shí)間、是否可以使用DSR寄存器等。寄存器的可編程部分(以W或E標(biāo)記的條目,見下
    的頭像 發(fā)表于 09-18 10:17 ?1022次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(26)CSD Registers

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

    寄存器是存儲(chǔ)實(shí)際配置參數(shù)的配置寄存器。為了使將來的擴(kuò)展成為可能,該卡應(yīng)在寄存器的保留位中返回0。 OCR寄存器 32位操作條件寄存器存儲(chǔ)卡的Vpo電壓剖面。此外,這個(gè)寄存器還包括狀態(tài)信息位。如果卡上電過程已經(jīng)完成,則設(shè)置一個(gè)狀態(tài)位。這個(gè)寄存器包括另一個(gè)狀態(tài)位,在設(shè)置上電狀
    的頭像 發(fā)表于 09-14 09:53 ?551次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(25)<b class='flag-5'>SD</b> Registers

    瀚海SD NAND存儲(chǔ)功能描述(22)Timing Values

    Timing Values 塊讀取Gap 在讀取操作過程中,由于主機(jī)緩沖區(qū)已滿,主機(jī)需要通過停止SDCLK來停止從卡中讀取數(shù)據(jù)的輸出。考慮到使用采樣時(shí)鐘調(diào)優(yōu)方法,主機(jī)需要在塊間隙停止SDCLK,而
    的頭像 發(fā)表于 09-04 11:20 ?543次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(22)Timing Values

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

    數(shù)據(jù)讀取 注:數(shù)據(jù)線表示數(shù)據(jù)總線(1位或4位)。 單塊讀取 主機(jī)選擇一張卡進(jìn)行CMD7的數(shù)據(jù)讀取操作,并設(shè)置CMD16面向塊的數(shù)據(jù)傳輸?shù)挠行?/div>
    的頭像 發(fā)表于 09-03 10:14 ?606次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(21)<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>讀寫</b>

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

    SD存儲(chǔ)SD 狀態(tài) SD狀態(tài)包含與SD存儲(chǔ)卡專有特性相關(guān)的狀態(tài)位,并且可能用于未來特定應(yīng)用程序
    的頭像 發(fā)表于 08-26 10:00 ?575次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(18)命令類e

    瀚海SD NAND存儲(chǔ)功能描述(14)命令類a

    的類總是被設(shè)置為1。具有特定功能的卡可能需要支持一些可選命令。 例如,Combo Card應(yīng)該支持CMD5。等級(jí)0、2、4、5和8是強(qiáng)制性的,所有SD存儲(chǔ)卡都應(yīng)支持。除CMD40外,SDHC和SDXC是強(qiáng)制性的。其他類是可選的。
    的頭像 發(fā)表于 08-19 10:26 ?494次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(14)命令類a

    瀚海SD NAND存儲(chǔ)功能描述(13)讀寫擦除超時(shí)

    讀、寫、擦除超時(shí)條件 如果主機(jī)在給定的超時(shí)時(shí)間內(nèi)沒有收到任何響應(yīng),則應(yīng)假定該卡不會(huì)響應(yīng),并嘗試恢復(fù)(例如重置卡,電源周期,拒絕等)。 Read 對(duì)于標(biāo)準(zhǔn)容量SD存儲(chǔ)卡,讀取操作的超時(shí)條件發(fā)生的時(shí)間
    的頭像 發(fā)表于 08-18 13:43 ?697次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(13)<b class='flag-5'>讀寫</b>擦除超時(shí)

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

    (CMD6)可以將1.10及以上版本的SD卡置于高速模式。l高速是access模式組中的功能,如下表所示。是否支持高速模式是可選的
    的頭像 發(fā)表于 08-12 16:03 ?700次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(11)命令系統(tǒng)CMD8

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

    開關(guān)功能狀態(tài) 開關(guān)功能狀態(tài)是返回的數(shù)據(jù)塊,其中包含功能和當(dāng)前消耗信息。塊長(zhǎng)度預(yù)定義為512位,不需要使用SET_BLK_LEN命令。狀態(tài)數(shù)據(jù)
    的頭像 發(fā)表于 08-09 10:15 ?441次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>(9)切換<b class='flag-5'>功能</b>

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

    ACMD41的功能;爭(zhēng)論中的HCS和回應(yīng)中的CCS(卡容量狀態(tài))。 HCS被卡忽略,卡對(duì)CMD8沒有反應(yīng)。 但是,如果卡沒有返回CMD8響應(yīng),主機(jī)應(yīng)該將HCS設(shè)置為0。標(biāo)準(zhǔn)容量SD存儲(chǔ)卡忽略HCS。如果
    的頭像 發(fā)表于 07-22 10:54 ?729次閱讀
    <b class='flag-5'>瀚海</b><b class='flag-5'>微</b><b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>應(yīng)用之<b class='flag-5'>SD</b>協(xié)議<b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>功能</b><b class='flag-5'>描述</b>2 初始化命令