eMMC

基于eMMC的128路数据采集系统设计

作者:侯天喜,李锦明,马 林,降 帅;2017年电子技术应用第9期

摘 要: 针对水下模拟船舱相关参数的高速多次采集存储任务,设计了一种基于eMMC的多通道数据采集系统。该系统以FPGA为主控芯片,控制8个通道模拟多路复用开关和8个AD转换器来实现128路信号同时采集。与传统采集系统相比,该系统以eMMC为存储单元,解决了传统的以Flash为存储模块的复杂的坏块检测与系统管理等问题。试验证明,128路数据采集存储系统的误差可控制在0.1%范围内,能够确保已存的数据可靠、有效。

0 引言

当今海洋已经和太空一样成为人类探索自然的重要领域,我国水下探测设备的水平已达到一个新的高度。随着我国水下探测技术的进步,对数据采集及存储测试仪器的可靠性、高速、大容量、多通道等技术参数提出了更高的要求[1-2]。本文的128路数据采集及存储系统主要完成对水下模拟船舱相关参数的高速多次采集存储任务,以eMMC为存储单元,解决了传统的以Flash为存储模块的复杂的坏块检测与系统管理等问题。该系统可进行多次触发,采集并存储采集数据;通过读数盒与上位机通信并传输采集的试验数据。

eMMC原理 4——总线协议

作者:codingbelief

1. eMMC 总线接口

eMMC 总线接口定义如下图所示:

eMMC 总线接口定义

各个信号的描述如下:

CLK

CLK 信号用于从 Host 端输出时钟信号,进行数据传输的同步和设备运作的驱动。
在一个时钟周期内,CMD 和 DAT0-7 信号上都可以支持传输 1 个比特,即 SDR (Single Data Rate) 模式。此外,DAT0-7 信号还支持配置为 DDR (Double Data Rate) 模式,在一个时钟周期内,可以传输 2 个比特。

eMMC原理 3——分区管理

作者:codingbelief

1. Partitions Overview

eMMC 标准中,将内部的 Flash Memory 划分为 4 类区域,最多可以支持 8 个硬件分区,如下图所示:

1.1 概述

一般情况下,Boot Area Partitions 和 RPMB Partition 的容量大小通常都为 4MB,部分芯片厂家也会提供配置的机会。General Purpose Partitions (GPP) 则在出厂时默认不被支持,即不存在这些分区,需要用户主动使能,并配置其所要使用的 GPP 的容量大小,GPP 的数量可以为 1 - 4 个,各个 GPP 的容量大小可以不一样。User Data Area (UDA) 的容量大小则为总容量大小减去其他分区所占用的容量。更多各个分区的细节将在后续小节中描述。

1.2 分区编址

eMMC原理 2——eMMC简介

作者:codingbelief 

eMMC 是 embedded MultiMediaCard 的简称。MultiMediaCard,即 MMC, 是一种闪存卡(Flash Memory Card)标准,它定义了 MMC 的架构以及访问 Flash Memory 的接口和协议。而 eMMC 则是对 MMC 的一个拓展,以满足更高标准的性能、成本、体积、稳定、易用等的需求。

eMMC 的整体架构如下图片所示:

图片: eMMC 整体架构

图片: eMMC 整体架构

eMMC原理 1 ——Flash Memory 简介

作者:codingbelief

eMMC 是 Flash Memory 的一类,在详细介绍 eMMC 之前,先简单介绍一下 Flash Memory。

Flash Memory 是一种非易失性的存储器。在嵌入式系统中通常用于存放系统、应用和数据等。在 PC 系统中,则主要用在固态硬盘以及主板 BIOS 中。另外,绝大部分的 U 盘、SDCard 等移动存储设备也都是使用 Flash Memory 作为存储介质。

1. Flash Memory 的主要特性

与传统的硬盘存储器相比,Flash Memory 具有质量轻、能耗低、体积小、抗震能力强等的优点,但也有不少局限性,主要如下:

需要先擦除再写入
Flash Memory 写入数据时有一定的限制。它只能将当前为 1 的比特改写为 0,而无法将已经为 0 的比特改写为 1,只有在擦除的操作中,才能把整块的比特改写为 1。

块擦除次数有限
Flash Memory 的每个数据块都有擦除次数的限制(十万到百万次不等),擦写超过一定次数后,该数据块将无法可靠存储数据,成为坏块。

eMMC框架及其初始化

eMMC的全称是Embedded MultiMedia Card,MMC协会所制定的内嵌式存储器标准规格,主要应用于智能手机和移动嵌入式产品。eMMC是一种嵌入式非易失性存储系统,由标准MMC接口、主控制器和NAND Flash三部分组成,采用JEDEC标准BGA封装。

eMMC的这种将Nand Flash芯片和控制芯片封装在一起的设计概念,就是为了简化产品内存储器的使用,客户只需要采购eMMC芯片放进产品中,不需要处理其它复杂的Nand Flash兼容性和管理问题,减少研发成本和研发周期。

在Linux系统中,eMMC仍然作为一个传统的块设备工作,上层可以搭载各种文件系统,Android智能设备早期采用yaffs2,目前使用ext4。基于eMMC的ext4文件系统在Linux中的框架如下图所示

FPGA的eMMC嵌入式阵列存储系统设计

摘要: 本文实现了一种嵌入式阵列存储系统,以具有体积优势、性能优势以及价格优势的eMMC嵌入式多媒体卡为存储介质,基于FPGA使用硬件逻辑实现读写控制器,并给出软件仿真以及硬件测试结果。同时控制8片存储芯片扩展容量,在速度提高方面使用了GTX高速收发器。和单片存储系统对比,本设计系统具有海量存储、高速读写等特点。

引言
eMMC(Embedded MultiMedia Card)是嵌入式多媒体卡的简称[1]。当前,移动终端,尤其是手机,平板以及军用控制器等手持设备,对存储系统都要求高速以及海量,并且一个重要条件是体积小。设计基于FPGA的eMMC控制器有以下几个优点:体积小,对便携性要求严格的移动终端有很好的支持力,接口速度达到50 MB,符合便携设备对访问速度的要求,满足大容量系统的需求;控制器采用FPGA硬件逻辑实现,提高系统兼容性。

1eMMC阵列系统总体方案

Virtex6 FPGA的eMMC控制器设计

张耀军,孙铭,王锏 西安电子科技大学 电子信息攻防对抗与仿真重点实验室

摘要: 介绍了eMMC芯片的技术特点、工作原理,以及控制器的设计方案。该设计基于Xilinx公司的Virtex6系列FPGA芯片,实现了控制器的设计方案,并给出了仿真结果,验证了该设计方案的可行性。此外,该设计均采用硬件逻辑实现,具有速度快、通用性强、可靠性高的特点。

引言
eMMC(embedded Multi Media Card)是由MMC协会所订立的,主要针对手机、平板电脑等便携式产品的内嵌式存储器。eMMC存储芯片的优势在于将NAND Flash和主控芯片封装成一个微型的BGA芯片,提供标准的接口并管理内存,不需要处理复杂的Flash兼容性和管理问题,使得应用厂商专注于产品开发的其他部分,从而缩短产品研发时间、降低研发成本。本设计是基于eMMC4.5(JESD84B45)协议,并在FPGA(XC6VLX240T)上硬件实现,具有性能稳定、可移植性强、通用性好的特点,用户无需关注底层物理协议,而且操作简单。

1eMMC工作原理

同步内容