27-eMMC电路设计

本文介绍了eMMC(嵌入式多媒体卡)的原理、结构、接口速度、系统架构、工作流程,以及不同芯片的实例应用,重点涵盖了硬件电路设计要点和几个典型平台的实战案例。
摘要由CSDN通过智能技术生成

视频链接

eMMC电路设计01_哔哩哔哩_bilibili

eMMC电路设计

1、eMMC简介

eMMC叫嵌入式多媒体卡,英文全称为Embedded Multi Media Card。是一种闪存卡(Flash Memory Card)标准,它定义了MMC的架构以及访问Flash Memory的接口和协议。

嵌入式多媒体存储卡eMMC是一种管理型Nand Flash。

eMMC芯片实际上是一个封装继承了Nand Flash和控制Flash的控制器,控制器把坏块管理、ECC校验以及损耗均衡等一些Flash具备的管理功能集成到芯片里,然后对外的接口采用的是标准的MMC(多媒体存储卡)接口,用户只需要根据接口的协议,开发控制器就能操作芯片。

其接口电压可以是1.8V或者是3.3V。它的特点就是容量大,数据传输快,尺寸小,开销很小。

eMMC5.0的协议与eMMC低版本例如4.5,4.4等的区别就在于读写速度有区别。低版本的不支持HS200和HS400的速度,四点几的现在基本上停产,选用eMMC5.0的协议。

2、eMMC系统总体架构(三部分)

eMMC规范主要定义了Device Controller和接口的相关规范,如图中蓝色部分标识

eMMC内部主要可以分为Flash Memory、Flash Controller以及Host Interface三大部分。

2.1Flash Memory

Flash Memory是一种非易失性的存储器,通常在嵌入式系统中用于存放系统、应用和数据等,类似与PC系统中的硬盘。

eMMC在内部对Flash Memory划分了4个主要区域,如下图所示:

eMMC 内部分区

1、BOOT Area Partition 1&2:此分区主要是为了支持从eMMC启动系统而设计的。

2、RPMB Partition:RPMB是Replay Protected Memory Block的简称。

3、General Purpose Partition 1~4:此区域则主要用于存储系统或者用户数据。

4、User Data Area:此区域则主要用于存储系统和用户数据。

2.2Flash Controller

NAND Flash直接接入Host时,Host端通常需要有NAND Flash Translation Layer,即NFTL或者NAND Flash文件系统来做坏块管理、ECC等的功能。

NAND Flash 与 eMMC

2.3Host Interface

eMMC与Host之间的连接如下图所示:

3、eMMC性能

接口速度高达每秒52MB,EMMC具有快速、可升级的性能。同时接口电压可以是1.8V或者3.3V。eMMC的速度模式分为SDR50、HS200、HS400,共三种。

4、eMMC实例(整版以镁光-MTFC8GAKAJCN为例)

4.1、eMMC命名规范

4.2、eMMC封装(153-ball BGA)

5、eMMC框图

6eMMC工作流程

6.1、工作流程

(一)eMMC的初始化

(二)eMMC的读写

6.2、操作模式

主要有5种操作模式:

7eMMC管脚定义

管脚符号

类型

描述

VCC

(VDDF)

Supply

Vcc: NAND interface I/O and NAND Flash power Supply。(Supply voltage for Core)

VCCQ

(VDD)

Supply

VccQ: eMMC controller core and eMMC I/O power Supply。(Supply voltage for I/O)

VSSQ

Supply

VSSQ: eMMC controller core and eMMC I/F ground connection

(VSS and VSSQ are connected internally。)

VSS

Supply

Ground connections

VDDIM

Internal voltage node

Do not tie to supply voltage or ground

信号线

管脚符号

类型

描述

DAT[7:0]

I/O

Bidirectional data channels. It operates in push-pull mode

RST_n

I

Hardware reset signal pin

DS

(Data Strobe)

O

Data strobe: Generated by the device and used for data output and CRC status response output in HS400 mode。The frequency of this signal follows the frequency of CLK。For data output, each cycle of this signal directs two bits transfer(2X) on the data , one bit for the positive edge and the other bit for the negative edge。For CRC status response output,the CRC status is latched on the positive edge only, and is “Don’t Care ”on the negative edge。

CLK

I

Clock input

CMD

I/O

A bidirectional signal used for device initialization and command transfers.

Command operates in two modes, open-drain for initialization and push-pull for fast command transfer.

各个信号的用途如下所示:

CLK:用于同步的时钟信号

Data Strobe:此信号是从Device端输出的时钟信号,频率和CLK信号相同,用于同步从Device端输出的数据。该信号在eMMC 5.0中引入。

CMD:此信号用于发送Host的command和Device的response。

DAT0-7:用于传输数据的8bit总线。

Host与eMMC之间的通信都是Host以一个Command开始发起的。针对不同的Command,Device会做出不同的响应。

DAT[7:0]                                                         8

CLK                                                              1

RST_n                                                            1

DS                                                               1

CMD                                                              1

NC                                                             109

RFU                                                             11

VCC                                                             4

VCCQ                                                            5

VDDIM                                                           1

VSS                                                             6

VSSQ                                                            5

合计:12+120+21=153

8、EMMC硬件电路设计要点(★)

9、硬件实战设计 (★)

9.1   ZYNQ7020硬件实战

9.2   XC7Z030 eMMC硬件实战

9.3、全志H3 eMMC硬件实战

9.4、RK3399  eMMC硬件实战

10、拓展 

详细内容参考视频讲解

  • 57
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32是一种高性能的32位微控制器,而eMMC(embedded MultiMediaCard)是一种用于嵌入式系统的快速存储技术。在设计STM32 emmc电路时,需要考虑以下几个方面: 1. 硬件设计:首先,需要评估eMMC的引脚要求和电气特性,并将其与STM32的引脚映射进行匹配。然后,将eMMC连接到STM32的相应引脚,并确保信号和电源线路的良好布局和连接。此外,还需加入外部电容和电阻以保证信号质量和稳定性。 2. 软件设计:其次,需要编写软件驱动程序,以便STM32可以与eMMC进行通信。这包括初始化eMMC,读取和写入数据,以及处理错误和异常情况的代码。 3. 时序设计:eMMC的工作时序非常重要,需要根据其规格书中的建议设置STM32的时钟频率和设置。这样可以确保STM32和eMMC之间的时序兼容性,以有效地进行数据传输。 4. 电源管理:确保为eMMC提供稳定和适当的电源,并根据需要进行电源管理。这样可以确保eMMC在正常工作时获得所需的电源电压和电流,从而避免数据丢失和性能下降。 5. 硬件布局:在PCB设计和布局中,需要在STM32和eMMC之间提供适当的电容和电阻,并遵循地面引脚和信号引脚的布局和连接规则。此外,还需要考虑电源噪声和干扰的隔离和屏蔽。 总的来说,STM32 emmc电路设计需要综合考虑硬件和软件方面的因素,并确保与eMMC的兼容性和稳定性。这样可以提高STM32与eMMC之间的数据传输效率和可靠性,确保嵌入式系统的正常运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值