精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

瀚海微SD NAND之SD 協議(37)SPI總線保護和讀寫

呂輝 ? 來源:jf_40298777 ? 作者:jf_40298777 ? 2024-10-09 10:29 ? 次閱讀

總線傳輸保護

總線上傳輸的每條SD卡命令都受到CRC位的保護。在SPI模式下,SD存儲卡提供了CRC ON模式,使具有可靠數據鏈路的系統能夠排除實現CRC生成和驗證功能所需的硬件或固件。在CRC OFF模式下,命令的CRC位被定義為“不關心”發送端,而被接收端忽略。

缺省情況下,SPI接口初始化為CRC OFF模式。然而,用于將卡切換到SPI模式的RESET命令(CMD0)在SD模式下被卡接收,因此應該有一個有效的CRC字段。

由于CMD0沒有參數,所有字段的內容(包括CRC字段)都是常量,不需要在運行時計算。

有效的復位命令為:Ox40, Ox0, Ox0, Ox0, Ox0, ox95卡進入SPI模式后,將根據CMD59設置對包括CMD0在內的所有命令進行CRC檢查。

主機可以使用CRC_ON_OFF命令(CMD59)打開和關閉CRC選項。

主機應在發出ACMD41之前啟用CRC驗證。始終啟用CMD8 CRC校驗。

主機應在CMD8參數中設置正確的CRC。

如果檢測到CRC錯誤,無論命令索引如何,卡都會在R1響應中返回CRC錯誤。

數據讀取

SPI模式支持單塊讀取和多塊讀取操作(SD Memory Card協議中的CMD17或CMD18)。

在接收到一個有效的讀命令后,卡將用一個響應令牌和一個數據令牌進行響應,參考下圖。

在標準容量卡的情況下,數據令牌中的大小由set BLOCKLEN (CMD16)設置的塊長度決定。

對于SDHC和SDXC卡,無論cmd16設置的塊長度如何,塊長度都固定為512字節。

wKgaomcF6iyAAa-bAABwzBmzE3I594.png

最大塊長度為512字節,與CSD中定義的READ_BL_LEN無關。

如果在標準容量卡中啟用部分塊訪問(即CSD參數READ BL partial等于1),塊長度可以是1到512字節之間的任何數字。

起始地址可以是卡有效地址范圍內的任意字節地址。但是,每個塊應包含在單個物理卡扇區中。

如果禁用部分塊訪問,則只支持512字節的數據長度。SDHC和SDXC卡只支持512字節的塊長度。起始地址應與塊邊界對齊。

在數據檢索錯誤的情況下,卡將不傳輸任何數據。相反,一個特殊的數據錯誤令牌將被發送到主機。

下圖顯示了一個以錯誤令牌而不是數據塊結束的數據讀取操作。

wKgZomcF6kWASRDFAADodlS3Etc553.png

數據寫入

SPI模式支持單塊和多塊寫命令。在接收到有效的寫命令(SD存儲卡協議中的CMD24或CMD25)后,卡將使用響應令牌進行響應,并等待主機發送數據塊。

CRC后綴、塊長度和起始地址限制(CSD參數WRITE BL PARTIAL控制部分塊寫選項和WRITE_BL_LEN除外)與讀操作相同,參考下圖

wKgZomcF6l6ANb0PAABrbTB5Vlc941.png

每個數據塊都有一個“開始塊”標記的前綴(一個字節)。在接收到數據塊后,卡將使用數據響應令牌進行響應。如果接收到的數據塊沒有錯誤,將對其進行編程

只要卡在忙編程,所有連續的忙令牌流將被發送到主機(有效地保持低數據輸出線)。

一旦編程操作完成,主機應該使用SEND_STATUS命令(CMD13)檢查編程的結果。一些錯誤(例如地址超出范圍,違反寫保護等)僅在編程期間檢測到。

在數據塊上執行并通過數據響應令牌與主機通信的唯一驗證檢查是CRC和一般寫錯誤指示。

在多塊寫操作中,停止傳輸將通過在下一個塊的開始處發送' stop Tran'令牌而不是'Start Block'令牌來完成。

如果出現寫錯誤指示(在數據響應上),主機將使用SEND_NUM_WR_BLOCKS (ACMD22)來獲取寫好的寫塊的數量。

wKgaomcF6m-AFCqBAABpymRye3g152.png

當卡忙時,重置CS信號不會終止編程過程。卡將釋放數據輸出線(三狀態)并繼續編程。

如果在編程完成之前重新選擇卡,則DataOut線將被強制返回低電平,并且所有命令將被拒絕。

重置存儲卡(使用CMDO用于SD存儲卡)將終止任何掛起的或正在進行的編程。這可能會破壞卡上的數據格式。預防是主機的責任

擦寫保護管理

SPI模式的擦寫保護管理過程與SD模式的擦寫保護管理過程相同。

當卡擦除或更改預定義扇區列表的寫保護位時,它將處于忙狀態并使DataOut線保持低電平。

下圖說明了使用和不使用忙信令的“無數據”總線事務。

wKgaomcF6oGAP-p6AABOFd1W64o130.png



審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1701

    瀏覽量

    91345
  • 總線
    +關注

    關注

    10

    文章

    2869

    瀏覽量

    87995
  • SD NAND
    +關注

    關注

    0

    文章

    81

    瀏覽量

    1219
收藏 人收藏

    評論

    相關推薦

    Arduino程序:實現SD NAND(貼片sd卡)的讀寫功能

      單片機上傳程序的時候,有時候感覺它的rom和 ram有時直接限制了他的使用,之前使用eeprom,和sd卡模塊. []()   然后最近看到了出的SD NAND 就是下面這個
    發表于 11-07 17:45

    瀚海SD NANDSD 協議(42)SPI總線時序

    SPI總線時序圖 所有時序圖使用以下原理圖和縮寫: 所有定時值的定義如表所示。 主機在收到卡響應后,應保持時鐘運行至少NcR時鐘周期。此限制適用于命令和數據響應令牌。 命令/響應 主機對卡的命令響應
    的頭像 發表于 10-21 10:19 ?219次閱讀
    <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'>之</b><b class='flag-5'>SD</b> <b class='flag-5'>協議</b>(42)<b class='flag-5'>SPI</b><b class='flag-5'>總線</b>時序

    瀚海SD NANDSD 協議(40)SPI模式CMD8的操作

    )和b)的AND。 “不匹配”是其他情況。 a) vhs中只有1位設置為“1”。 b)卡支持主機電源電壓。 響應 響應令牌有幾種類型。和SD模式一樣,所有的都先傳輸MSB。 在SPI模式下定義了多個
    的頭像 發表于 10-14 10:00 ?229次閱讀
    <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'>之</b><b class='flag-5'>SD</b> <b class='flag-5'>協議</b>(40)<b class='flag-5'>SPI</b>模式CMD8的操作

    瀚海SD NANDSD 協議(39)SPI模式 Transaction Packets

    命令格式 所有SD Memory Card命令長度為6字節。 命令傳輸總是從與命令碼字對應的位串的最左位開始。 所有的命令都受到CRC的保護。 命令和參數如下方第3個圖表所示。 命令分類 SD模式下
    的頭像 發表于 10-12 11:11 ?254次閱讀
    <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'>之</b><b class='flag-5'>SD</b> <b class='flag-5'>協議</b>(39)<b class='flag-5'>SPI</b>模式 Transaction Packets

    瀚海SD NANDSD 協議(38)寄存器&amp;復位&amp;開解鎖

    讀取CID/CSD寄存器 類似SD存儲卡協議(其中寄存器內容作為命令響應發送)。在SPI模式下讀取CSD和CID寄存器的內容是一個簡單的讀塊事務。該卡將響應一個標準的響應令牌,后跟一個16字節的數據
    的頭像 發表于 10-10 09:28 ?230次閱讀

    瀚海SD NANDSD 協議(36)SPI模式

    簡介 SPI模式由基于flash的SD存儲卡提供的輔助通信協議組成。 這種模式是SD存儲卡協議的一個子集,設計用于與
    的頭像 發表于 10-08 10:13 ?247次閱讀
    <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'>之</b><b class='flag-5'>SD</b> <b class='flag-5'>協議</b>(36)<b class='flag-5'>SPI</b>模式

    瀚海SD NANDSD 協議(32)1.8V信令的驅動強度和總線時序

    輸出驅動強度 4級驅動強度為了保持主機系統的靈活設計,輸出驅動可以看到大范圍的主機負載。 4?種可選驅動強度使主機系統能夠調整驅動強度,以優化特定的主機負載。 這使SD卡能夠靈活地支持不同的系統負載
    的頭像 發表于 09-26 10:31 ?211次閱讀
    <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'>之</b><b class='flag-5'>SD</b> <b class='flag-5'>協議</b>(32)1.8V信令的驅動強度和<b class='flag-5'>總線</b>時序

    瀚海SD NANDSD 協議(29)硬件接口

    SD存儲卡硬件接口 SD存儲卡有6條通信線路和3條供電線路: CMD:命令是雙向信號。主機和卡驅動以推拉方式工作。 DAT0-3:數據線是雙向信號。主機和卡驅動在推拉模式下運行 CLK:時鐘是主機到
    的頭像 發表于 09-24 10:19 ?257次閱讀
    <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'>之</b><b class='flag-5'>SD</b> <b class='flag-5'>協議</b>(29)硬件接口

    SD NAND SPI模式:如何實現低功耗運行

    最近,收到客戶反饋,使用我們SD NAND過程中,使用SPI模式,對SD完成操作后,SD沒有進入低功耗模式,未對
    的頭像 發表于 09-02 11:06 ?392次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b> <b class='flag-5'>SPI</b>模式:如何實現低功耗運行

    瀚海SD NAND應用之SD協議系統功能和概念 1 基礎知識

    (SDXC): 32GB以上,不超過2TB 工作電壓范圍:2.7 V ~ 3.6 V專為只讀和讀寫卡設計。 總線速度模式(使用4條并行數據線) (1)默認速度模式:3.3V信令,頻率最高可達25mhz,最高
    的頭像 發表于 07-19 11:47 ?516次閱讀
    <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'>SD</b><b class='flag-5'>協議</b>系統功能和概念 1 基礎知識

    SD NANDSPI NAND和eMMC的區別對比分析

    SPI NANDSD NAND和eMMC是三種不同類型的嵌入式存儲技術,它們各自具有獨特的特點和應用場景。以下是這三種存儲技術的主要區別:
    的頭像 發表于 07-02 11:31 ?1119次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>、<b class='flag-5'>SPI</b> <b class='flag-5'>NAND</b>和eMMC的區別對比分析

    Verilog:【8】基于FPGA實現SD NAND FLASH的SPI協議讀寫

    的硬件電路連接,下一步就是根據SD卡的讀寫時序講通信方式初始化為SPI模式,并按照SD協議進行讀寫
    發表于 06-21 17:58

    SD NANDSPI NAND的區別

    SD NANDSPI NAND各有優缺點,適用于不同的應用場景。SD NAND提供更高的
    的頭像 發表于 06-04 14:26 ?1839次閱讀

    什么是SD NAND存儲芯片? SD NAND與TF卡的區別

    什么是SD NAND?它俗稱貼片式T卡,貼片式TF卡,貼片式SD卡,貼片式內存卡,貼片式閃存卡,貼片式卡...等等。雖然SD NAND 和T
    的頭像 發表于 01-06 14:35 ?1687次閱讀
    什么是<b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>存儲芯片? <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>與TF卡的區別

    什么是SD NAND存儲芯片?

    NAND閃存芯片,支持 ECC (Error Correcting Code) 算法和壞塊管理,能有效地降低數據丟失的風險。   高速讀寫SD NAND
    發表于 01-05 17:54