基于NiosII软核处理器的SD卡接口设计

分享到:
130
下一篇 >

  0 引言

  Altera公司开发的Nios II是基于可编程片上系统SOPC(System on a Programmable Chip)技术的32 位嵌入式处理器软核。Altera 公司开发的Nios II软核,可以直接放在FPGA中,它体现了把实现产品的全部单元电路集成到一个芯片之内的片上系统SOPC的思想。作为一种具有竞争力的技术,在国外已经有大量的产品使用了这种技术,在国内使用Nios II处理器进行嵌入式系统设计的***也越来越多,但是离大规模应用还有距离,应该得到更加广泛的关注。本文在实际的项目中需要使用Nios II来开发存储系统,对于利用Nios II来进行嵌入式系统开发,还有许多工作需要去深入研究本文在进行存储系统项目开发的过程中,完成了基于FPGA的系统硬件软件设计。为了到达系统的设计目标,就需要对Nios II的SOPC技术进行深入的研究。还需要进行uClinux操作系统的移植,基于操作系统的SD卡数据读写,必然就要涉及到怎样编写驱动程序。本文先简单介绍操作SD卡的基本的硬件电路,接着给出了SD卡读写操作和驱动程序设计的基本过程。*后给出了全文的结论,本文给出的方法具有一定的普遍性,和实用性。

  1系统硬件结构设计

  1.1 SD卡

  SD卡(Secure Digitgal Memory Card)即“**数码存储卡”是由日本松下公司、东芝公司、美国SANDISK 等公司在MMC卡的基础上共同开发研究而推出的,是一种容量大、高性能、**性好、访问接口简单的存储卡,得到了广泛的使用。使用的范围包括:MP3、数码摄像机和照相机产品、智能手机等消费类电子设备。当前很多微处理器在内部都集成了与SD卡通信的接口电路。

  1.2 SD卡的特征

  SD 卡的外形和接口触点如图1 所示。外形尺寸分为两种,分别为:24 mm * 32 mm * 2.1 mm 或24 mm * 32mm *1.4mm.

图1 SD 卡的形状和接口

  微处理器和SD卡之间的接口电路,要符合一定的约定,这个在SD卡的读写操作中,被称为通信协议。为了适应不同的通信协议,可以设置SD 卡使其工作在不同的通信模式之下。SD卡的通信模式分为两种,一种是所谓的SD模式,另一种是SPI模式。现在SPI通信模式得到越来越多的使用。在处理器和SD卡的通信过程中,和SD卡通信的处理器(称为主机),选择一种通信方式,但在通信的整个过程中不能改变通信模式。SD卡分析复位命令,以确定下面的通信采用什么模式,在接下来的时间内,通信双方要使用相同的通信模式。

  当工作在SD模式下时,主机使用SD总线访问SD卡,使用多点总线拓朴结构。这种结构包括一个主机和多个从机(这里是指SD卡)。所有的SD卡共用一个时钟信号CLK、电源和地,命令线和数据线则是属于每一SD卡所专用的。前面说到现在的微处理器都集成有硬件SPI接口,用于板内的芯片之间的操作非常方便。当设定工作在SPI模式下时,主机使用自身所带的SPI总线来访问SD卡。微处理器在**个发给SD卡的复位命令中配置通信模式为SPI方式,当然在操作SD卡的通信期间,通信模式是不能更改为SD模式的。

你可能感兴趣: 嵌入式 图片
无觅相关文章插件,快速提升流量