nios ii与cf卡的接口设计

nios ii与cf卡的接口设计

ID:10938037

大小:91.00 KB

页数:4页

时间:2018-07-09

nios ii与cf卡的接口设计_第1页
nios ii与cf卡的接口设计_第2页
nios ii与cf卡的接口设计_第3页
nios ii与cf卡的接口设计_第4页
资源描述:

《nios ii与cf卡的接口设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、NiosII与CF卡的接口设计 1CF卡的特点及应用   CF卡是最近几年蓬勃发展固态非易失的存储介质,由于CF卡具有携带方便、易于升级、存储量大、抗震性好等优点,在大容量便携式数据存储和传输过程中,CF有着非常广泛的应用前景,如数码相机、MP3播放器、PDA(个人数字助理)、数字式录音机、笔记本电脑、手提电话、机顶盒等。预计今后在其他领域将有更为广泛的应用。另外CF卡的兼容性佳,不仅同时支持3.3V和5V的电压,而且不同的CF卡都可以用单一的机构读写,特别是CF卡升级换代时也可以保证旧设备的兼容性。而纯电子运动的CF卡

2、耗电量很低,仅为IBM微型硬盘的5%。目前,CF卡容量从最早的2MB到现今的8GB,数据传输从最早的5MB/s发展到现在的20MB/s。   CF卡由2个基本部分构成:内部控制器和闪存模块。CF卡的闪存模块基本上都使用NAND型闪存,用于存储数据。内部控制器用来实现CF卡与主机的接口以及控制数据的传输。CF卡内部控制器的设计完全模拟硬盘,使用标准的ATA/IDE接口。   CF的存取方式有3种:PCCardMemory模式、PCCardI/O模式以及TrueIDE模式。PCCard模式与PCMCIA标准兼容。TrueID

3、E模式与ATA标准兼容。   3种方式相比,在TrueIDE模式下,CF卡与主机通信的信号最少,硬件接口最简单、软件易于实现,因此本设计采用TrueIDE模式。2CF卡接口控制器的寄存器的定义   在设计中,采用Altera提供的一个CF接口控制器内核实现CF卡数据的传输.该内核提供一个连接片外CF卡的Avalon总线接口,通过使用适当的时序把Avalon总线信号映射到CF卡,提供了对标准的实IDE模式寄存器的访问,允许设计者在NiosII系统中简易连接就可以使用CF卡。图1所示为CF卡接口控制器内核的结构框图。 图1C

4、F卡控制器内核结构框图   该内核提供2个Avalon总线从端口.第一个是为了访问CF设备内部的寄存器组,第二个是为了访问控制器内核内部的寄存器文件,CF核提供2个高有效的中断请求输出,一个是CF插入或移除的中断信号,另一个是把设备上的中断信号传送到Avalon主设备。   对于CF卡的操作(如:读/写),其实就是对CF卡控制器的寄存器进行操作。所以,必须对CF卡的寄存器十分熟悉。这些寄存器统称为任务文件(taskfile)寄存器:(1)数据寄存器(读/写),用于CF卡的读写操作。主机通过该寄存器向CF卡数据缓冲写入或从

5、CF卡数据缓冲读出数据。(2)错误寄存器(读)和特性寄存器(写)读操作时,此寄存器为错误寄存器,用于指明错误的原因;写操作时,此寄存器为特性寄存器。(3)扇区数寄存器(读/写)。用来记录读、写扇区的数目。(4)扇区号寄存器(读/写),用来记录读、写和校验命令指定的起始扇区号或逻辑块地址(LBA)的BIT7:0。(5)柱面号寄存器(读/写),用来记录读、写、校验和寻址命令指定的柱面号或LBA的BIT23:8。(6)驱动器/磁头寄存器(读/写),记录读、写、校验和寻道命令指定的驱动器号、磁头号或LBA的BIT27:24,其中

6、BIT6(LBA)用来设置CF卡扇区的寻址方式(LBA=0,采用CHS模式;LBA=1。采用LBA模式)。(7)状态寄存器(读)和命令寄存器(写),在读操作时,该寄存器是状态寄存器,指示CF卡控制器执行命令后的状态,读状态寄存器则返回CF卡的当前状态;在写操作时,该寄存器是命令寄存器,接收主机发送给CF卡的控制命令。3NiosII处理器与CF卡的硬件接口设计   在Altera公司提供的SoPC软件中对该软核进行配置时,选用NiosIICPU、内部定时器、CF卡接口控制器、SDRAM控制器、FLASH存储器接口、LCD接

7、口和EPCS4串行配置器件控制器接口。其框图如图2所示。 图2硬件接口框图4CF卡的接口控制器的软件操作   在NiosII系统中,应用软件架构在HAL(硬件抽象层)和C标准库函数上。在NiosIIIDE中建立新的软件工程时,IDE会根据SoPCBuilder对系统的硬件配置自动生成一个定制HAL系统库。这个库能为程序和底层硬件的通信提供接口驱动程序,HAL系统库为CF卡接口控制器内核提供了两组直接访问设备寄存器的API函数,其中一个是针对IDE任务文件(ATA)寄存器的,主要提供了对标准的实IDE模式寄存器的访问设,另

8、一个是针对CF接口控制寄存器的,主要提供了对电源,复位,插入或移除检测和中断的控制。设计者只需要调用这些函数就可以访问外部设备。   由于CF卡的读写是以一个扇区为基本单位的。在读写一个扇区之前必须先指明当前需要读写的柱面、头和扇区或LBA地址,然后发送读写命令。一个扇区的512B需要一次性连续读出或写入。主机读/写

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。