论文部分内容阅读
消费类电子市场中,便携式电子产品多采用NAND Flash等大容量存储介质,用于存储导航地图、多媒体影音等文件,消费者对PC主机与便携式电子设备之间的文件传输速度提出更高的要求。利用微软公司的.ActiveSync同步工具,可以实现数据传输,但传输速度慢,无法满足用户传输大容量文件的速度要求。USB协议规范支持Mass Storage设备类,相比ActiveSync速度传输更快,同时可实现热插拔U盘功能,方便用户操作,可以用作主机与设备之间的数据传输方式。
本文基于Intel XScale PXA270处理器和Microsoft Windows CE 5.0操作系统,利用USB传输协议和NAND Flash存储芯片设计Mass Storage功能,主要工作分为四个部分。第一,移植微软公司提供的协议层驱动,主要包括批量传输协议和SCSI(小型计算机系统接口)透明命令集。第二,移植USB设备控制器驱动的MDD(模型设备驱动)层,设计PDD(平台相关驱动)层,驱动设备控制器实现数据通信。第三,设计NAND Flash设备驱动,主要实现与芯片相关的FMD层(Flash介质驱动层),实现芯片的初始化、数据读写、数据擦除及坏块管理等。第四,设计电源管理,实现睡眠唤醒功能。由于协议层驱动由微软公司提供,驱动设计部分重点在于USB设备控制器的PDD层和存储芯片的FMD层;系统调试部分重点在于SCSI命令解析模块与存储芯片的交互部分,实现热插拔和睡眠唤醒时磁盘分区的正常加载和卸载,实现Mass Storage功能层与存储芯片的数据读写操作,读写操作时数据传输大小的合理配置(64KB)影响功能设备的稳定性和传输速度。通过微软公司CETK工具测试,驱动程序工作正常;设备连接到主机上能正确识别,支持热插拔和睡眠唤醒等操作,性能稳定可靠。由于NAND Flash驱动读写速度过慢,成为制约设备传输速度的瓶颈,采用改进方案对驱动进行优化设计。Mass Storage传输速度为430KBps,初步满足嵌入式产品速度传输的需要,已经应用在实际产品上。