新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ARM的嵌入式系统CF卡存储技术

基于ARM的嵌入式系统CF卡存储技术

作者:时间:2012-03-06来源:网络收藏

将片选任务寄存器的CS4A 编程为1 则可使能EBI 的复用引脚NCS4/CS、NCS5/CE1、NCS6/CE2 为CompactFlash 信号CFCS、CFCE1、CFCE2,使能NOE/NRD/CFOE、NWR0/NEW/CFWE、NWR1/NBS1/CFIOR、NWR3/NBS3/CFIOW、A25/CFRNW为Compact Flash 信号CFOE、CFWE、CFIOR、CFIOW、CFRNW。这样就可以通过访问保留给NCS4 的地址空间来访问外部的CF 卡。在NCS4 的地址空间中用当前的传输地址来分辨I/O 模式,通用模式是标志模式。传输地址总线的A23 用作I/O 模式选择。该文CF 卡用A22/REG 来分离通用模式和标志存储模式。

在I/O 模式下,CompactFlash 的逻辑驱动CFIOR与CFIOW 信号上SMC 的读写信号,此时CFOE 与CFWE 信号失效。同样在通用存储模式和标志存储模式下驱动CFOE 与CFWE 信号上的SMC,CFIOR与CFIOW 信号失效。该逻辑如图3 所示。

CF卡读写控制信号

CFOE 与CFWE 通过CPLD 和CF 卡的OE 与WE连接起来,这是CF 卡在Memory Mode 的读写使能。

CFIOE 与CFIOW 通过是I/O Mode 的使能。除了使能信号外,其他的信号对2 种模式都是相同的。

CFCE1 与CFCE2 信号使能CF 卡的数据总线由上或是由下访问,具体信息见表1。只有当NCS4 引脚上的SMC 配置为驱动8 位存储器时才可进行奇字节访问,NCS4 地址空间中的片选寄存器必须如表1所示进行设置。

自上与自下字节访问

_CD1、_CD2 为低电平时,CPU 的地址总线的低11 位A[10∶0]于CF 卡的地址总线A[10∶0]连通,CPU的数据总线的低16 位D[15∶0]与CF 卡的地址总线D[15∶0]连通。CPU 的A25/CFRNW 信号是数据流的方向的,NCS4/CFCS 信号是数据总线的传输使能。详细内容请参阅表2。

数据流向

CPU 是高速器件,CF 卡是低速器件,在CPU 给CF 卡传输数据的时候就会发生因为接收速度慢而丢失数据的情况。所以需要用_WAIT 信号来延迟CPU 的发送,这样才能使CPU 的发送时序与CF 卡的接受时序匹配,使得数据的传输正确无误。实际电路中CF 卡的_WAIT 信号通过CPLD 来控制CPU 的NWAIT 信号,_WAIT 要接10 kΩ 的上拉电阻。RDY/BSY 是CF 卡的工作状态信号,当RDY/BSY 为1 时,CF 卡已经做好准备接收新的数据;当RDY/BSY 为0 时,CF 卡正在接受数据,这个信号也要接个10 kΩ上拉电阻。CF 卡的复位RESET 信号也是由的复位nRESET 信号在CPLD 中反相后产生的,以保持和的复位信号同步。

4 CPLD 程序开发

CPLD 程序在quartus Ⅱ下用Verilog HDL 语言编写。程序经过编译后,下载到CPLD 中固化。连接电路板和CF 卡,对CF 卡进行数据的读写操作,测试结果表明数据传输正确无误,且传输速率更高。

5 结束语

该文重点研究了如何利用CPLD 来连接与CF 卡。其中使用的CPLD 不但简化了接口电路,使其适合现场编程,同时改进的接口电路还适合产生各种复杂组合逻辑和时序逻辑。这种存储的正确性已在电路板上得到验证,它为系统的CF 卡存储提供了一种有效的解决方案。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭