CF卡驱动软件说明.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CF 卡驱动软件设计说明 1. 驱动模型介绍 1. IVxBu 码驱动介绍 操作系统 VxWorks6.X 版本下的驱动开发提出一个新的概念: VxBus 虚拟总线。 在 VxBus 提出之前,驱动程序是通过直接编辑修改 BSP 产生的。 VxBus 提供对设 备 驱动的管理,提高了 VxWork 开发的可扩展,可升级等性能。一方面, VxBas 将各个 驱动有效组织, 并将驱动对应到实际的设备上, 形成实例;另一方面, VxBus 给上 层软件提供友好的接口来调用设备, 使底层驱动对于上层用户更加透明。 另 外, VxBus 将设备驱动模块化,这些模块能在 WindRiver 的开发环境 Workbench 里方便 的组织和配置, 这就意味着驱动可以加入一个工程中, 也可以进行配置和 删除,不 需要对 BSP 进行修改,简化了驱动的开发过程。 按照驱动完成的不同功能, VxBus 将驱动分为以下几个大类:串行驱动、存 储 驱动、网络接口驱动、非易失性 RAM 驱动、计时器驱动、 DMA 空制器驱动、总 线控 制器驱动、 USE 驱动、中断控制器驱动等。对于 VxBus 驱动结构的更详细的 介绍请 参考《基于 VxBus 的驱动程序架构分析》。本文中,我们将 CF 卡设备按照 存储驱动 类进行开发。 1.2 文件系统与XBD 工具 VxWorks 为不同类型的应用提供多种文件系统。大多数 VxWorks 文件系统依 赖 eXtended Block Device(XBD) 工具作为文件系统和设备驱动之间的标准接口。 这 种接口可以允许开发人员将文件系统和设备驱动自由组合。 可移动设备的文件 系统 利用文件系统监督程序自动监测设备插入, 并且在设备上实例化适当的文件 系统。 CF 卡属于物理块设备,物理块设备是指由一系列可访问的独立数据块组成的 设 备。在 VxWorks 中,块就是指最小的可寻址单元。最常见的块设备就是磁盘。 在 VxWorks 中,块设备的接口与其它 I /O 设备的接口不同,它不是与 I /0 系统 直接交 互,而是通过 eXtended Block Device(XBD) 处理文件系统与块设备之间 的 I /0 活 动,它提供了文件系统与块设备之间的标准接口。 1.3 CF 卡的 XBD 驱动模型 大容量块设备驱动与文件系统进行交互,文件系统与 I /0 系统进行交互。 XBD(extended block device) 使用 ERF(event reportingframework) 与驱动和高 层功 能交互。系统为 CF 卡设备驱动分配一个 XBD 吉构。当 CF 卡插入系统后, ERF 就会 产生一个插入事件通知那些等待该设备插入的上层函数。 XBD 工具包括两个 主要数据结构:①XBD 吉构,保存设备名,设备类型,设备方法指针,设备块大 小以 及块数等设备物理属性;②BIO 结构, Block —IO(BIO)结构包括读写 XBD 设 备的必 要信息:起始块号,块数,数据传输方向和数据缓存。 CF 卡设备的XBD 驱动模型如图 I 所示。大框中表示以下事件: (1) DOS FAT32 文件系统向 ERF 登记,并且等待设备插入事件。 ⑵ 设备驱动通知 ERF 设备插入,并且为 CF 卡设备创建一个 XBD 接 口。 (3)ERF 通知已经注册的 FAT32 文件系统,现在文件系统就可以访问 CF 卡设 备 了。 (4)文件系统在 XBD 设备驱动的上层再创建一个分区层。 另外, CF 卡驱动分为两层,靠近底层的 CF 卡主控制器驱动 Sata Host Controllerdriver ,以及靠近上层的 XBD 大容量存储驱动 Mass Storage Class XBDdriver。 图 1-CF 卡的XBD 驱动模型 2. CF 卡驱动程序设计 VxBus 存储驱动提供块设备管理程序,将各种 VxWorks 文件系统挂载到块设 备上。它采用的 XBD 驱动程序设计工具,利用两个相关的 VxWorks 子系统库: eXte ndedBlockDevice(XBD)和 Eve nt Reporti ng Framcwork(ERF),作为连接设 备 驱动和 VxWorks 文件系统之间的接口。驱动层次结构如图 2 所示。 图 2-驱动层次结构 驱动层又分为两个子层: CF 卡硬件驱动层和 VxWorks 子系统库驱动层。 CF 卡硬 件驱动层直接操作 P1010E 处理器上的 SATA 控制器中相应寄存器就可以对 CF 卡发 送命令,完成 CF 卡初始化以及数据传输等功能。 VxWorks 子系统驱动层 调用 eXt

文档评论(0)

墨臻网络 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8076027046000022
认证主体苏州墨臻互联网科技有限公司
IP属地江苏
统一社会信用代码/组织机构代码
91320506MA26CPT988

1亿VIP精品文档

相关文档