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

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

3天內不再提示

eMMC響應的格式和類型

嵌入式那些事 ? 來源:嵌入式那些事 ? 2023-12-12 13:38 ? 次閱讀

eMMC響應

eMMC響應有兩種長度的數據包,分別為48 Bits和136 Bits,eMMC響應的格式如下圖所示:

2869cda8-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-12_21-32-24

eMMC的響應由48 bits或者136 bits組成,所有的eMMC響應都以00開始,以1結尾。所有的eMMC響應都是在CMD線上進行傳輸的,eMMC設備發送響應時先發送響應的起始位(Start bit),最后發送響應的結束位(End bit)。

Start Bit:起始位,固定為0,在沒有響應傳輸的情況下,CMD線上的信號保持高電平,當eMMC設備將Start Bit發送到總線上時,Host可以很方便檢測到響應的Start Bit(CMD線上的信號由高電平變為低電平),并開始接收響應。

Transmission Bit:傳輸位,固定為0,該位指示CMD線上數據的傳輸方向,該位為0,表示CMD線上數據的傳輸方向為從eMMC設備到Host。

Content:響應的具體內容,不同的響應Content不同。

CRC:CRC校驗值,包含Start Bit、Transmission Bit和Content內容的CRC校驗值。

End Bit:結束位,固定為1。

eMMC有5種類型的響應,包括:R1,R2,R3,R4和R5。

R1

R1響應的數據長度為48 bits,其中[45:40]數據位域表示的是該響應對應命令的編號。[39:8]是一個32位大小的位域,主要用于反應設備的狀態信息,具體的設備狀態信息內容可以參考eMMC 5.1 spec的6.13 Device status章節。

28858c82-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-12_21-49-14

R1b和R1完全相同,只是R1b會在數據線DAT0上傳輸一個可選的busy信號?;趀MMC設備在接收命令之前的狀態,eMMC設備在接收到一些命令之后可能會變得繁忙。

R2

R2響應的數據長度為136 bits。[127:1]是一個127位大小的位域,該位域將CID寄存器的值作為CMD2和CMD10的響應內容。[127:1]位域也可以將CSD寄存器的值作為CMD9的響應內容。CID和CSD寄存器的[127:1]位作為R2響應內容被傳輸,CID和CSD寄存器的保留位[0]由于該位的值總是1,因此保留位[0]被R2響應的End bit替換。

289f3c36-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_19-50-41

R3

R3響應的數據長度為48 bits。[39:8]是一個32位大小的位域,該位域將OCR寄存器的值作為CMD1的響應內容。

28b731b0-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_20-14-36

R4

R4響應的數據長度為48 bits。[39:8]是參數域,該位域包含尋址設備的RCA,要進行讀寫操作的寄存器地址以及寄存器內容。如果操作成功,參數域中的狀態位將被置1。R4響應只作為對CMD39的響應。

28cc38bc-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_20-23-39

R5

R5響應的數據長度為48 bits。如果該響應由Host產生,那么RCA[31:16]位域的值應該為0。R5響應只作為對CMD40的響應。

28eb9676-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_20-26-42

eMMC數據塊

eMMC數據塊由Start bit、Data、CRC和End bit組成。下面對不同總線寬度和數據速率(Date Rate)下,各個數據塊的格式進行一個簡單的說明。

1位總線寬度 SDR模式

28f4d902-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-07-10

CRC為Data的16 bitCRC校驗值,不包含起始位。

4位總線寬度 SDR模式

29139eaa-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-17-13

各個數據線上的CRC為對應數據線的Data的16 bit CRC校驗值。

8位總線寬度 SDR模式

2932463e-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-21-31

各個數據線上的CRC為對應數據線的Data的16 bit CRC校驗值。

4位總線寬度 DDR模式

2962c1c4-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-23-47

DDR模式下,在時鐘的上升沿和下降沿數據線都會傳輸數據。在時鐘的上升沿傳輸數據的奇數字節(字節1,3,5 ...),在時鐘的下降沿傳輸數據的偶數字節(字節2,4,6 ...)。

在DDR模式下,每個數據線上有兩個相互交織的CRC16,時鐘上升沿的CRC比特組成odd CRC16,時鐘下降沿的CRC比特組成even CRC16。odd CRC16用于校驗該數據線上所有上升沿比特組成的數據,even CRC16用于校驗該數據線上所有下降沿比特組成的數據。

8位總線寬度 DDR模式

297be956-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-25-27

eMMC CRC status token

在Host向eMMC設備寫數據過程中,eMMC設備接收到Host發送的一個數據塊之后,會進行CRC校驗,如果校驗成功,eMMC設備會在對應的數據線上向Host回復一個Positive CRC status token("010"),如果校驗失敗,eMMC設備會在對應的數據線上向Host回復一個Negative CRC status token("101")。

在Host從eMMC設備讀取數據的過程中,Host接收到eMMC設備發送的一個數據塊之后,也會進行CRC校驗,但是不論校驗成功還是校驗失敗,Host都不會向eMMC設備回復CRC status token。

Positive CRC status token

299bff0c-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-56-11

Negative CRC status token

29ac5c08-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_21-57-10

eMMC寄存器

eMMC 5.1協議定義了7個寄存器:OCR,CID,CSD,EXT_CSD,RCA,DSR和QSR,下面簡單的列舉常用的6個寄存器。

名稱 寬度(字節) 說明 實現
OCR 4 操作條件寄存器(Operation conditions register)。通過廣播命令獲取寄存器信息,包含設備的供電類型和尋址模式。 必須
CID 16 卡識別寄存器(Card IDentification)。包含識別設備的唯一碼。 必須
CSD 16 卡特定數據寄存器(Card Specific Data)。包含卡操作狀態的具體信息。 必須
Extended CSD 512 擴展卡特定數據寄存器(Extended Card Specific Data)。包含設備的容量和當前模式信息。 必須
RCA 2 相對地址寄存器(Relative card address)。在初始化過程中,由主機控制器動態分配的地址。 必須
DSR 2 驅動等級寄存器(Driver Stage Register)。配置設備的輸出驅動。 可選

eMMC總線測試過程

在SDR模式下,Host通過發送CMD19和CMD14可以進行eMMC總線測試過程(Bus testing procedure),測試eMMC接口硬件引腳連接性。在DDR模式下,不支持總線測試,CMD19和CMD14被認為是非法命令。

在SDR模式下進行eMMC總線測試時,首先Host發送CMD19給eMMC設備,接著Host在每根數據線上發送特定格式的數據給eMMC。然后,Host發送CMD14給eMMC設備,請求eMMC設備回復翻轉的數據。Host可以通過對接收到的翻轉數據進行比較,就能知道eMMC接口的引腳引腳連接情況。

1bit總線寬度時,eMMC總線測試的數據格式如下圖所示:

29c87faa-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_22-22-42

4bit總線寬度時,eMMC總線測試的數據格式如下圖所示:

2a3dff8c-98a6-11ee-8b88-92fbcf53809c.png

Snipaste_2023-10-13_22-23-58

8bit總線寬度時,eMMC總線測試的數據格式如下圖所示:

2a72c500-98a6-11ee-8b88-92fbcf53809c.png

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

    關注

    87

    文章

    11022

    瀏覽量

    207054
  • 數據包
    +關注

    關注

    0

    文章

    231

    瀏覽量

    24143
  • 總線協議
    +關注

    關注

    0

    文章

    83

    瀏覽量

    14758
  • emmc
    +關注

    關注

    6

    文章

    185

    瀏覽量

    52090

原文標題:Linux MMC子系統 - 3.eMMC 5.1總線協議淺析(2)

文章出處:【微信號:嵌入式那些事,微信公眾號:嵌入式那些事】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何把文件系統燒到EMMC并從EMMC加載

    如何下載并從SD卡加載文件系統,提到過可以從EMMC引導系統,本篇將為您介紹如何把文件系統燒到EMMC,并從EMMC加載。
    的頭像 發表于 10-30 16:06 ?1663次閱讀
    如何把文件系統燒到<b class='flag-5'>EMMC</b>并從<b class='flag-5'>EMMC</b>加載

    emmc,什么是emmc

    詳細介紹什么是emmc,emmc主要應用在哪些地方,并說明了EMMC的結構及優點。
    發表于 08-23 10:58 ?7.8w次閱讀

    eMMC的結構和電源配置

    最新的eMMC產品遵循JEDEC eMMC 5.1標準,該標準定義了eMMC的通信信號、命令、內部寄存器、特性,并為系統設計人員提供指導。它是工業應用和汽車應用的嵌入式存儲解決方案的理想選擇,這些
    的頭像 發表于 11-14 16:21 ?2014次閱讀
    <b class='flag-5'>eMMC</b>的結構和電源配置

    eMMC總線協議解析

    eMMC總線中,可以有一個Host,多個eMMC設備??偩€上的所有通信都是以Host發送一個Command給eMMC開始的,eMMC對于收到的不同Command會做出不同的respo
    的頭像 發表于 12-08 14:35 ?1295次閱讀
    <b class='flag-5'>eMMC</b>總線協議解析

    請問RT-Thread emmc驅動編寫如何格式化?

    SDIO,同時也ST自帶的驅動測試到了EMMC的擦除,讀寫操作 但是我看到使用文件系統,首先需要格式化吧,但是格式化的接口是空的,無操作。所以我想知道這個格式化驅動盤是否有什么操作要求
    發表于 02-23 08:04

    CH569 EMMC讀取TF卡發送命令響應超時是什么原因造成的?

    手上有一塊CH569的開發板。燒錄EMMC的例程。執行到EMMCReadOCR之后一直執行中斷中的錯誤打印。錯誤代碼是E:0x0001??词謨允敲?b class='flag-5'>響應超時。請問可能有哪些原因造成這個現象?
    發表于 06-15 09:01

    基于SD卡測試結構的EMMC測試座,EMMC測試治具說明書

    EMMC測試治具是針對市面上出現的EMMC芯片(內嵌式存儲記憶芯片)
    發表于 04-28 16:23 ?1.1w次閱讀

    eMMC改寫內嵌閃存卡格局

    eMMC卡集成控制器與Nand閃存,具有快速的主機響應速度和讀寫速度,可以大幅提升智能機/平板電腦的開機速度。
    發表于 08-23 11:11 ?3354次閱讀
    <b class='flag-5'>eMMC</b>改寫內嵌閃存卡格局

    基于異構多核的多類型DAG響應時間分析

    基于異構多核的多類型DAG響應時間分析
    發表于 06-15 14:08 ?22次下載

    Linux 如何在emmc增加分區《Rice linux 學習開發》

    本文描述是基于高通平臺,在emmc上增加一塊分區,并掛載自己制作的ext4格式的鏡像。作者是第一次弄這個,很多都不是很懂,有不對的地方...
    發表于 01-25 20:06 ?5次下載
    Linux 如何在<b class='flag-5'>emmc</b>增加分區《Rice linux 學習開發》

    SD NAND與eMMC優劣勢對比

    最近我們接觸到一些客戶,本來客戶計劃使用eMMC,但總覺得哪里不滿意。后來跟客戶做了深入溝通。你們真實的想要什么樣的eMMC呢?他們給出的答案有:尺寸最小的eMMC;最方便焊接的eMMC
    的頭像 發表于 06-17 17:36 ?1211次閱讀
    SD NAND與<b class='flag-5'>eMMC</b>優劣勢對比

    貼片式SD卡與eMMC該如何選擇?

    最近我們接觸到一些客戶,本來客戶計劃使用eMMC,但總覺得哪里不滿意。后來跟客戶做了深入溝通。你們真實的想要什么樣的eMMC呢?他們給出的答案有:尺寸最小的eMMC;最方便焊接的eMMC
    的頭像 發表于 09-28 15:46 ?1011次閱讀
    貼片式SD卡與<b class='flag-5'>eMMC</b>該如何選擇?

    eMMC芯片的PCB可制造性設計問題

    了解eMMC芯片 eMMC芯片是一種集成了閃存存儲器和控制器的嵌入式多媒體卡(Embedded MultiMediaCard)芯片,其主要應用于移動設備,如手機、平板電腦,可以用于存儲操作系統
    的頭像 發表于 06-29 08:44 ?418次閱讀
    <b class='flag-5'>eMMC</b>芯片的PCB可制造性設計問題

    EMMC主控固件讀取及SD轉emmc接線

    EMMC主控固件讀取及SD轉emmc接線
    發表于 08-10 09:46 ?21次下載

    工業樹莓派燒寫設備eMMC

    Sensing、Media、Industrial、nano等產品都基于Raspberry Pi Compute Module 4(簡稱CM4),CM4模塊的板載eMMC單元與主SD卡接口相連接。本指南解釋了如何將數據寫入eMMC存儲。
    的頭像 發表于 08-15 09:58 ?607次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>