0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

瀚海微SD NAND存储功能描述(11)命令系统CMD8

吕辉 来源:jf_40298777 作者:jf_40298777 2024-08-12 16:03 次阅读

高速模式(25mb /秒接口速度)

虽然Rev 1.01 SD存储卡支持高达12.5 MB/秒的接口速度,但为了支持主机不断增长的性能需求和内存大小持续增长,25 MB/秒的速度是必要的。为了实现25 MB/sec的接口速度,时钟速率增加到50 MHz, CLK/CMD/DAT信号时序和电路条件被重新考虑并从物理层规范1.01版本更改。

上电后,SD卡处于默认的速度模式,使用开关功能命令(CMD6)可以将1.10及以上版本的SD卡置于高速模式。l高速是access模式组中的功能,如下表所示。是否支持高速模式是可选的。因为在每个卡都有不同的定时模式(默认和高速模式)的情况下,不可能控制两张卡或更多卡,为了满足严格的定时,主机只能运行一张卡。CLK/CMD/DAT信号必须在主机和卡之间一对一连接

wKgZoma5wW6ATO2IAAL_tS-2MOo010.png

命令系统

SD命令CMD34-37、CMD50和CMD57是为通过switch命令扩展SD命令系统预留的命令。

在命令系统功能组的各种功能之间切换,将改变这些命令的解释和相关的总线事务(即命令无需数据传输、单块读取、多块写入等)。

支持命令系统是可选的当选择“标准命令集”(默认功能0x0)时,这些命令将不被卡识别,将被视为非法命令。当选择“厂商指定”(功能0xE)时,这些命令的行为是厂商指定的。它们不是由本标准定义的,并且可能因不同的卡供应商而改变。

当选择“移动电子商务”(功能Ox1)时,这些命令的行为由SD规范Part A1:移动商务扩展规范管理。当使用这些扩展中的任何一个时,应该特别注意正确选择命令集函数,否则,主机命令可能会被错误地解释。SD存储卡的所有其他命令(不为switch命令保留)始终可用,并且无论当前选择的命令集如何,都将按照本文档中定义的方式执行。

发送接口条件命令(CMD8)

CMD8(发送接口条件命令)用于初始化符合2.00及以上物理层规范的SD存储卡。当卡处于Idle状态时,CMD8有效。

该命令有两个功能。

电压检查:检查卡是否能在主机供电电压下工作。

扩大现有的指挥和反应能力:恢复CMD8可以通过重新定义以前保留的位来扩展一些现有命令的新功能。

扩展了ACMD41以支持SDHC卡和初始化扩展也适用于SDXC卡。

CMD8格式如下表所示。

wKgaoma5wYuAC98TAAD2PDQZTk0104.png

当卡处于Idle状态时,主机应先发出CMD8,再发出ACMD41。在参数中,'电压供应'被设置为主机电源电压,'检查模式'被设置为任意8位模式。

卡检查是否能在主机供电电压下工作。接受供电电压的卡返回R7响应。

在响应中,卡将回显参数中设置的电压范围和校验模式。如果卡不支持主机供电电压,则不返回响应,处于Idle状态。

CMD8插卡操作如下表所示。应用说明:“check pattern”建议使用“10101010b”。

wKgZoma5waKALN5tAADKXrIOrfk412.png

1.Resnonse表示卡实际返回的响应(如果不包含响应传递过程中的错误)。

2.匹配是指a)和b)条件的与,不匹配为其他情况。

a) VHS中只有1位被置为1

b)卡支持主机供电电压表4-18 SD模式下CMD8的卡操作

卡容量类型命令功能差异

D41响应中的CCS决定了卡的容量类型,CCS=0为SDSC, CCS=1为SDSCSDHC或 SDXC。内存访问命令包括块读命令(CMD17、CMD18)、块写命令(CMD24、CMD25)和块擦除命令(CMD32、CMD33)。

以下是SDSC和SDHc、SDXC内存访问命令的功能差异:

命令参数SDHC和SDXC使用内存访问命令的32位参数作为块地址格式。块长度固定为512字节,与CMD16无关。SDSC使用内存访问命令的32位参数作为字节地址格式。块长度由CMD16决定,

例如:

(a)参数0001h是字节地址0001h在SDSC和0001h块在SDHC和SDXC

(b)参数0200h是SDSC中的字节地址0200h, SDHC和SDXC中的字节地址0200h

部分访问和不对齐访问当使用块地址时,

SDHC和SDXC禁用部分访问和不对齐访问(跨越物理块边界)。访问仅基于块寻址授予。设置块长度对于内存访问命令,SDHC和SDXC使用512字节的固定块长度,而不考虑CMD16设置的块长度。

块长度的设置

不影响内存访问命令。CMD42不属于内存访问命令。数据块大小由CMD16指定,块长度可设置为512字节。当块长度大于512字节时,无论卡容量大小,都会设置BLOCK_LEN_ERROR错误位。

写保护组

SDHC和SDXC不支持写保护组。发出CMD28、CMD29和CMD30会产生ILLEGAL_COMMAND错误。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储
    +关注

    关注

    13

    文章

    4113

    浏览量

    85261
  • SDIO
    +关注

    关注

    2

    文章

    67

    浏览量

    19239
  • SD NAND
    +关注

    关注

    0

    文章

    59

    浏览量

    1160
收藏 人收藏

    评论

    相关推荐

    瀚海SD NAND存储功能描述(25)SD Registers

    卡登记 在卡接口内定义了六个寄存器:OCR, CID, CSD, RCA, DSR和SCR。这些只能通过相应的命令访问。OCR、CID、CSD和SCR寄存器携带卡片/内容特定信息,而RCA和DSR
    的头像 发表于 09-14 09:53 86次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(25)<b class='flag-5'>SD</b> Registers

    瀚海SD NAND存储功能描述(21)数据读写

    命令(CMD17)开始,该命令在参数字段中指定起始地址。响应像往常一样在CMD行上发送。 卡的数据传输开始于从读命令结束位开始的访问延时Na
    的头像 发表于 09-03 10:14 159次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(21)数据读写

    瀚海SD NAND存储功能描述(18)命令类e

    总线传输到主机。 作为对ACMD13 (CMD55后接CMD13)的响应,SD Status通过DAT总线发送给主机。ACMD13只能发送到“传输状态”的卡(卡被选中)。SD Stat
    的头像 发表于 08-26 10:00 159次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(18)<b class='flag-5'>命令</b>类e

    瀚海SD NAND存储功能描述(17)命令类d

    以“x”表示的值表示变量项。除了R3类型(见下文)之外的所有响应都受CRC保护。每个命令码字以结束位(总是1)结束。 对于SD存储卡有五种类型的响应。SDIO卡支持额外的R4和R5响应类型。有关SDIOl
    的头像 发表于 08-23 10:40 156次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(17)<b class='flag-5'>命令</b>类d

    瀚海SD NAND存储功能描述(16)命令类c

    1.10版本中定义 注(2):卡在以下情况下返回忙。 -Card执行内部初始化过程 -当参数中的HCS设置为0时,为SDHC或SDXC卡。 以上第8类给出了SD存储卡特定应用程序命令
    的头像 发表于 08-21 10:00 149次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(16)<b class='flag-5'>命令</b>类c

    瀚海SD NAND存储功能描述(14)命令类a

    的类总是被设置为1。具有特定功能的卡可能需要支持一些可选命令。 例如,Combo Card应该支持CMD5。等级0、2、4、5和8是强制性的,所有S
    的头像 发表于 08-19 10:26 171次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(14)<b class='flag-5'>命令</b>类a

    瀚海SD NAND存储功能描述(10)CMD6和其他命令关系

    CMD6 DATA与其他命令的关系 在CMD6事务期间,卡可以仅使用CMD(CMD12, CMD
    的头像 发表于 08-11 16:32 140次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(10)<b class='flag-5'>CMD</b>6和其他<b class='flag-5'>命令</b>关系

    瀚海SD NAND存储功能描述(9)切换功能

    开关功能状态 开关功能状态是返回的数据块,其中包含功能和当前消耗信息。块长度预定义为512位,不需要使用SET_BLK_LEN命令。状态数据结构如下表所示。响应的状态位包含
    的头像 发表于 08-09 10:15 164次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(9)切换<b class='flag-5'>功能</b>

    瀚海SD NAND存储功能描述8)专用命令CMD55 56

    应用专用命令app_cmd (CMD55) 当卡接收到这个命令时,会使卡将下面的命令解释为一个特定于应用程序的
    的头像 发表于 08-08 10:39 903次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(<b class='flag-5'>8</b>)专用<b class='flag-5'>命令</b><b class='flag-5'>CMD</b>55  56

    瀚海SD NAND应用存储功能描述(6)读写数据

    “传输状态”。 b)卡未锁定被锁定的卡将响应ACMD6为非法命令。 2GB卡 要制作2GByte卡,最大块长度(READ BL LEN- write BL LEN)应设置为1024字节。但是
    的头像 发表于 08-06 14:21 198次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(6)读写数据

    瀚海SD NAND应用存储功能描述(4)电压切换命令

    电压开关命令CMD11电压开关命令定义如下图所示。 CMD11可以在就绪状态下执行,不改变状态。即使卡被锁定,也可以执行CMD11。返回
    的头像 发表于 08-02 10:03 209次阅读
    <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'>功能</b><b class='flag-5'>描述</b>(4)电压切换<b class='flag-5'>命令</b>

    瀚海SD NAND应用之SD协议存储功能描述2 初始化命令

    ACMD41的功能;争论中的HCS和回应中的CCS(卡容量状态)。 HCS被卡忽略,卡对CMD8没有反应。 但是,如果卡没有返回CMD8响应,主机应该将HCS设置为0。标准容量SD
    的头像 发表于 07-22 10:54 218次阅读
    <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><b class='flag-5'>功能</b><b class='flag-5'>描述</b>2 初始化<b class='flag-5'>命令</b>

    在卡初始化的过程中,CMD8之后发送一个cmd55命令做什么?

    在卡初始化的过程中,CMD8之后发送一个cmd55命令做什么?在ACMD41前发送的那个我明白,但是在CMD55在CMD8后用作检测的说明也
    发表于 05-14 08:23

    CS创世SD NAND存储芯片应用方案

    nand_send_cmd(uint8_t cmd) { // 设置SDIO控制器传输模式和命令码 46. ``` h616_sdio_set_transfer_mode
    发表于 11-15 18:07

    sd card cmd2/3没有响应是为什么?

    我现在使用sdio的模式来读写sd卡,cmd8cmd55acmd41都能正常响应,但是cmd2/3没有响应,发送出去的命令
    发表于 09-27 08:02