嵌入式Linux的DiskOnChip设备驱动开发.docx

嵌入式Linux的DiskOnChip设备驱动开发.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式Linux的DiskOnChip设备驱动开发

嵌入式Linux的DiskOnChip设备驱动开发时间:2009-05-12 23:33来源:Linux Website 作者:尚观 点击:61次1 引 言 在以计算机技术、通讯技术相结合的信息时代的快速发展和互联网广泛应用的形势下,3C(Computer,Communication,Consumer)合一的趋势已经形成,其结果必然就是将计算机工业的中   1 引 言 在以计算机技术、通讯技术相结合的信息时代的快速发展和互联网广泛应用的形势下,3C(Computer,Communication,Consumer)合一的趋势已经形成,其结果必然就是将计算机工业的中心从计算产品转移到嵌入式信息产品。 然而由于嵌入式系统的应用要求及成本因素决定了嵌入式系统在系统资源,包括硬件资源和软件资源方面都是非常精简和高效的。因此在嵌入式系统中的存储设备一般不会采用硬盘等大容量高功耗设备,而改用诸如CompactFlash,EPROM等存储介质。因此本文就M-systems公司开发的新一代闪存FlashDiskOnChip 2000,介绍在基于嵌入式Linux系统上文件系统和块设备的支持及驱动。 2 硬件系统结构 电子盘的内部存储介质Flash是近几年来发展最快的一种存储芯片,他具有E2PROM可擦写的特点,又同时具有EPROM廉价的特点,他是一种高性能、低功耗、电可擦除的存储器件。根据其以上一些特点,电子盘已广泛应用于信息存储、机顶盒、网络计算以及嵌入式计算机等领域。 M-system公司推出的DiskOnChip 2000系列是新一代闪存磁盘(Flash Disk)。为标准32脚DIP封装,他与标准的E2PROM完全兼容。一般的闪存器(FlashMemory)只包含存储器部分,而控制器要另加。为了对闪存磁盘进行管理,DiskOnChip中已装有MSystem公司的闪存文件系统(TrueFFS)软件。这使得他使用简单,工作中不需要任何其他特殊复杂的算法。他的读/写与硬盘完全相同,因此他可以作为独立硬盘使用,并与其他磁盘兼容。可以直接引导计算机系统而不需要其他系统盘。他适用于3.3 V和5 V电源,功耗很小,对于那些空间受限,小型便携式装置,DiskOnChip将是最佳选择。DOC2000结构主要由系统接口单元(SystemIterface)、系统引导模块(BootBlock)、闪存控制单元(FlashControl)以及和Flash存储介质等组成,其结构如图1所示。 其中系统接口单元为DOC2000提供了类似SRAM的接口,使之能够通过CPU的本地总线、ISA总线以及SRAM总线建立与操作系统的连接。DOC提供片选信号(CE#)、读写信号(WE#)、使能信号(OE#)以及13位宽的地址线(A[0:12])和8位宽的数据总线(D[0:7])。系统接口在主总线信号(读、写、地址和片选)的控制下产生相应的控制信号送入闪存磁盘,其内部的ROM提供一种IPL码,此码在计算机启动过程中将闪存文件系统软件装入PC内存。他在PC的扩展BIOS中安排了8 kB以上的存储区域,其地址为0C000H~0EFFFH。计算机开机自检后,DiskOnChip作为PC的BIOS标准操作的一部分,BIOS搜寻ROM扩展码,找到后BIOS执行闪存磁盘内的初始化码,此码将闪存文件系统软件装入内存。闪存磁盘也将被安装为系统的一个磁盘,然后将传输器控制回到BIOS码。当操作系统要确认适合系统的磁盘时,闪存磁盘软件即模仿一个硬盘做出反应。 3 TrueFFS与Linux的文件系统 TrueFFS是M-system公司开发出来的专用于电子盘设备的专利技术。TrueFFS是Tornadoll开发环境中的一个集成的快速闪存文件系统,通过TrueFFS对DOC块设备的磁盘仿真功能,从而方便了嵌入式Linux系统对电子盘的读写、分区、格式化等一系列操作。通过对操作系统的I/O控制调用。Linux可以通过VFS访问TureFFS的外部接口。 Linux文件系统最优秀的地方是对多种文件系统的支持(这里的上层结构是指VFS系统和具体的文件系统,即除buffer管理系统以外的部分)。为了实现这种特色,就必须有一个抽象的层次来统一描述各种文件系统,Linux中就用VFS来实现了这个抽象层;同时,各种具体的文件系统又必须有一个和VFS交互的手段,如图2所示。 Linux文件系统管理的最上层模块是文件系统。系统启动时,必须先装入“根”文件系统,然后根据/etc/fstab中的指定,逐个建立文件系统。此外,用户也可以通过mount,umount操作,随时安装或卸载文件系统。Linux系统调用操作系统的GetDriveHandle()函数得到驱动器的句柄,他的返回值是一个能够供I/O控制函数调用的TrueFFS

文档评论(0)

tianma2015 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档