PCB抄板专家世纪芯官方网站——PCB抄板网 首页公司介绍资讯中心案例展示服务推荐常见问题联系我们 24小时客服热线:+86-0755-83035861/83035836

PCB抄板网世纪芯电子产品仿制开发技术服务门户 > 汽车电子 > 正文

深圳pcb抄板ARM9的SD/MMC卡控制器ASIC设计方案

2012年06月07日08:55

    如今多媒体数码产品的迅猛发展,其中,各种音频视频等功能的不断增强,使得系统对于存储介质的性能,容量,安全等方面的要求与日俱增。MMC卡和SD卡均是基于flash的存储设备,近年来,它们以高存储容量,快速的数据传输速率,加上极大的移动灵活性和更高的安全性已经成为闪存市场的标准,其广泛应用于手机,MP3,MP4,掌上电脑等各种产品中。可见,其已经成为面向便携式数码电子产品的SOC芯片中通用的功能接口。
    文章设计的SD/MMC控制器基于一款3G手机基带芯片,其内核采用ARM926EJ,系统总线架构为AMBA,控制器连接到APB总线上。通过分析SD卡和MMC卡的规范,利用Verilog HDL实现了符合该规范的SD/MMC卡控制器IP核,该IP在SMIC的0.13um标准单元工艺库下对模型进行了综合和优化。
    1 SD/MMC卡控制器工作原理
    SD(Secure Digital)卡和MMC(Multi Media Card)卡是市面上常见的两种数据存储卡。SD卡向下兼容MMC卡。
    两者基本特性相同,只是在数据接口以及传输模式上有一些区别:SD卡的数据线为4根,而MMC卡只有1根;SD卡支持安全性保护;而MMC卡支持比特流传输(不限长传输,即必须接受到停止命令时才停止传输)。
    控制器就是通过SD/MMC总线对SD/MMC卡进行初始化,读,写等一系列操作。pcb抄板其总线包括时钟线CLK,命令线CMD,数据线DAT3-DAT0(MMC卡只有DAT0)等。上电后,控制器必须按一定的总线协议传输命令给卡,使其初始化。总线上一共有三种数据格式:命令包,响应包,数据包。由于在传输中数据和命令均有可能出错,命令带有7位的CRC校验码,数据带有16位的CRC校验码。
    控制器对卡进行读操作时,将接收到的串行数据(可能是比特流,也可能是多块)转换为并行数据,存入FIFO。写操作也是相同的,控制器将并行数据从FIFO里面取出,串行发出。
    SD/MMC卡的工作时钟来源于控制器,对卡的命令或数据传输等一系列操作均要与该时钟同步。该时钟可以通过控制器进行配置,以适应不同工作状态中卡正常工作所需的不同时钟频率。需要注意的是,SD卡的最大工作频率是25Mhz,MMC卡的最大工作频率是20Mhz.
    总之,控制器不仅要输出合适的工作时钟,还要完成对命令/响应以及数据读写的正常工作,并针对命令和数据进行CRC校验,中断的及时产生和清除。
    2 控制器设计与实现
    2.1 模块划分
    在整个SOC中,我们这片TD基带芯片采用的是ARM926EJ-S内核,系统架构为AMBA总线。电路板克隆在设计中,将SD/MMC卡控制器作为APB的SLAVE挂在APB总线上,ARM通过APB总线来访问和控制该模块。本模块主要分为接口模块,CMD控制模块及DATA控制模块三部分。其结构框图如图1所示。
    图1 SD/MMC控制器结构
    接口模块实现与ARM的APB总线相连接,通

在线询价/咨询服务

24小时服务热线:18923830090

全国咨询热线:0755-83346939

走进世纪芯

世纪芯是一支由众多技术研发专家和科研企业结盟组成了技术服务型团队,自组建以来一直帮助政府、知名科研机构以及国内众多抄板企业攻克技术难题,10年来,我们专注反向技术研究并不断挑战大型疑难项目,目前已经成为国内抄板企业的中流砥柱。