收藏 分享(赏)

基于PXA255的WinCE开发平台的硬件设计.doc

上传人:weiwoduzun 文档编号:2086591 上传时间:2018-08-31 格式:DOC 页数:8 大小:40KB
下载 相关 举报
基于PXA255的WinCE开发平台的硬件设计.doc_第1页
第1页 / 共8页
基于PXA255的WinCE开发平台的硬件设计.doc_第2页
第2页 / 共8页
基于PXA255的WinCE开发平台的硬件设计.doc_第3页
第3页 / 共8页
基于PXA255的WinCE开发平台的硬件设计.doc_第4页
第4页 / 共8页
基于PXA255的WinCE开发平台的硬件设计.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、基于 PXA255的 WinCE开发平台的硬件设计摘 要 本文结合 xscale pxa255的 arm9系列嵌入式系统硬件平台以及 windows ce软件环境,以先尚 pxa255开发板为基础,设计 cf(compactflash)卡插槽与主机的接口电路。讨论在windowsce开发环境下硬件电路的实现,并完成了针对 ata接口的true ide 模式下 cf 卡驱动的编写。关键词 嵌入式系统 pxa255 windows ce cf 卡abstract this paper combined with the embedded systematic hardware platform o

2、f arm9 series and windows ce software environment,based on the cinsum pxa255 development board,the interface circuits between the pxa255 development board and the compact flash card socket are designed.in this paper, author mainly discuss the implementation of hardware electric circuits in the windo

3、wsce environment and realizes the program of the drive for the ata in the true ide mode.key words embedded system pxa255 windows ce compactflash card1.引言伴随着数码产品在消费电子领域的兴起,移动存储作为存储产品和技术中最活跃的部分,展现出了无尽的魅力和光明的前景。各种不同的格式卡在更高速度、更大容量和更小体积的三大指标上展开激烈的竞争。cf 卡以更高速度、更大容量为目标,多用于追求性能、高像素、连拍速度的高端数码相机上。存取速度和存储容量是 c

4、f卡的两个重要指标。intel 推出的 pxa255高效能处理器处理能力极高。本文以先尚 pxa255开发板为基础,深入研究了在 wince开发平台下,pxa255 开发板与 cf卡插槽之间接口电路的实现方案,以便进一步提高 cf卡的存取速度。2.基于 pxa255的硬件设计理论基础pxa255处理器是新一代的嵌入式处理器,基于 armv5te体系结构的微处理器,性价比较高、功耗较低,适合于数字移动电话、个人数字助理、网络路由器等嵌入式系统的应用1。pxa255 处理器提供了 pcmcia/cf卡控制器,可以方便地实现 pxa255处理器与cf卡的接口设计。cf卡由 2个基本部分组成,如图 2

5、-1所示:控制芯片和闪存模块组,控制芯片用来实现与主机的连接及控制数据在闪存模块中的传输,闪存用于存储信息4。图 2-1 cf卡结构框图cf卡支持多种接口访问模式,有符合 pcmcia规范的 memory mapped模式、i/o card 模式和符合 ata规范的 true ide模式。当 cf卡工作在存储器方式时,按照 ata标准以寄存器方式传送数据、命令和地址,命令寄存器用来接受命令和传输数据,控制寄存器用来进行磁盘控制;当 cf卡工作在 i/o方式时,控制寄存器组主要用于控制 cf卡的工作方式,命令寄存器组被分配在与 ata标准兼容的地址空间2。3.pxa255核心板与 cf卡插槽接口

6、电路的实现广州先尚计算机科技有限公司推出的 pxa255开发平台是一款基于 intel pxa255的高端 arm开发平台。它采用核心板加底板的配置,本设计的主要部件之一就是这块核心板。核心板封装为 200个引脚,主要包括 cpu,sdram 和 flash。3.1核心板与 cf卡插槽连接图图 3-1 核心板与 cf卡插槽连接框图核心板与 cf卡插槽连接方式如图 3-1所示,框图中使用了两个控制器件,分别为 74alvth16245和 74lvc574。下面分别介绍其在电路中的功能。74alvth16245是一个总线锁存器,核心板提供的 isa总线经过74alvth16245总线锁存器后输出,

7、锁存器用来在一定时期内稳定输出信号,输出信号用来控制 cf卡接口。74alvth16245 是 16位的,它可以当作两个 8位锁存器和一个 16位锁存器。数据可以从a总线上传送到 b总线上,也可以从 b总线传送到 a总线上。这由方向控制引脚(dir)上的逻辑电平决定。74lvc574 是一个高性能、低功耗、低电压的触发器件,由时钟的上升沿触发。3.2 cf卡的读写操作当检测到 cf卡与主机相连后,即可对 cf卡进行读写操作。cf准备好接收数据后,通过 cf-ireq引脚发出一个高电平信号给主机,主机接收到信号就知道 cf卡已经准备好接收数据,这时若主机也已准备好发送数据则通过向 cf发出写信号

8、 cfwe通知 cf卡,数据通过数据线写入到 cf卡指定空间。当在规定的时间内未完成读写操作,cf 卡会通过 cfwait引脚输出低电平通知主机延迟存取周期的完成时间。cf卡扇区寻址有两种方式:物理寻址方式(chs)和逻辑寻址方式(lba)。工作在不同的方式时,扇区号寄存器、柱面号寄存器和磁头寄存器表示的内容是不同的。在 chs方式下,系统隐藏扇区是不能访问的,能访问的扇区从 0柱面、0 磁头、1 扇区开始。 chs(柱面、磁头、扇区)寻址时,直接输入相应的柱面、磁头、扇区数值就可以了。在 lba访问方式时,则要将所要访问的逻辑扇区值转换成相应的物理磁道、柱面和扇区号。在数据传输时,必须先把传

9、输需要的地址信息发送到地址线上,即通过cs0、cs1、a0-a2 五根信号线。然后通过命令寄存器发出读/写信号。如果是读,cf 卡会把需要的数据发送到数据线上。如果是写,应该在数据线上准备好数据。在读写信号取消之前,数据必须一直保持有效状态。在有错误发生的时候,错误寄存器会返回相应的诊断码。4.cf卡的流接口驱动程序设计流接口驱动程序都用同一组接口并调用同一组标准函数集,以此完成标准的文件 io操作和电源管理,当设备需要驱动程序为其服务时,ce 平台使用中断机制通知操作系统(ce 支持中断嵌套和抢占)。中断处理分成两部分:中断服务程序 isr(常驻 oal层,可直接访问注册表)和中断服务线程

10、ist(pdd层,执行大多数的中断处理)3。ist 使用一个事件。并用 waitforsingleobject等待事件变为有信号(中断 irq信号与事件在 interruptinitialize时向内核注册),然后线程醒来并继续中断处理。图 4-1 基于 windows ce平台的驱动框架驱动程序在编写时可选用 pb或 evc,结合 mfc可编写出相关dll代码,但要集成到内核,还需编写配置文件。cec, 。bib,再把添加的 feature加入 catalog,并 import到相关 platform,最后重新编译内核 nk。bin 即可进入调试阶段。流接口驱动程序的加载有三种方法:第一种方

11、法是在系统启动时,从注册表hkey_local_machinedriversrootkey下找到键值driversbuiltin,并根据该值读取hkey_local_machinedriversbuiltin键的内容,并加载列出的流接口驱动程序。第二种加载在设备管理程序自动检测外围设备与 ce平台连接时进行,需要把找到的即插即用标识符与注册表进行比对,以确定执行注册表列出的驱动程序或自动探测。第三种情况是在不能自动探测或加载驱动时,用 activatedeviceex函数来加载驱动。流接口驱动程序是一个管理外围设备的 dll,它把设备表示为文件系统的一个特殊文件主要任务是把外设的使用传递给应用

12、程序。windows ce的设备文件存在固定的路径 windows 下,以一个特殊的命名惯例来区分设备文件和其他文件。流接口驱动程序接收设备管理器和应用程序通过系统调用的命令,并且封装所有命令,转换成控制设备适当的动作信息。图 4-1表示 cf 卡的流接口驱动程序和其他系统部件间的相互关系:流接口驱动程序通过内部硬件访问外围设备。对 cf卡而言,内部设备是 cf卡插槽,由内置 cf卡插槽驱动程序驱动,而 cf卡插槽驱动程序提供编写 cf卡流接口驱动程序的插槽接口函数。即 cf卡的设备驱动程序使用 cf卡服务库(由 cf卡插槽接口函数组成),cf卡服务库控制 cf卡插槽硬件5。cf卡加载流接口驱

13、动有两种方法:第一种加载的类型是在 dm自动检测到 cf卡与 windows ce平台的连接时进行的。第二种加载的形式是在 dm不能自动检测到 cf卡与平台的连接时,使用该 cf的应用程序必须列出该外围设备的驱动程序,即主动调用registerdevice( )或者 activatedevice( )函数实现驱动的加载。即插即用时驱动的加载是采用第一种类型。实现 cf卡即插即用,首先下位机需要修改相应的 cis(card information structure),在驱动中添加检测模块,并且在注册表添加设备注册信息。当系统开启或者 cf 卡插人槽后,dm 会调用在注册表中设置的检测模块检测插

14、卡类型,如果符合,则会加载相应的驱动。检测模块写成 dll 的形式,调用 cf卡插槽接口函数检测 cis中的数据,判断是否对应设备。如果对应,则告诉 dm 需要加载注册表中指定的相应设备的驱动程序。5.结束语cf卡存取速度和存储容量是两个重要的指标, cf 卡的速度当然是越快越好,目前市场上的 cf卡一般为 4x-16x,如果一块 cf卡确实能达到 16x标准,基本就可以满足多数应用需求了,不过大部分 cf卡的写入速度都远不能达标。而存储容量的增大必然带来一定体积上的增大,这也是一对矛盾所在。所以高速 cf卡和大容量 cf卡设计是重点和难点,而 cf卡插槽与主机的接口电路的设计就因此成为具有挑

15、战性的工作。本文在嵌入式理论基础之上提出了一种 pxa255核心板与 cf卡插槽之间的接口设计方案,它具有存取速度快的特点,同时有较好的应用性和可扩展性。参考文献:1 陈章龙,唐志强,涂时亮 嵌入式技术与系统 intel xscale结构与开发 北京航空航天大学出版社 2004 p15.2 compactflash association cf+ and compactflash specification revision 1.4.3 田东风 windows ce 应用程序设计 机械工业出版社 2003 p128-131.4 http:/.5 国家电工电子教学中心 arm 嵌入式 wince实践教程 2006 p47-51.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 期刊/会议论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报