资源预览内容
第1页 / 共62页
第2页 / 共62页
第3页 / 共62页
第4页 / 共62页
第5页 / 共62页
第6页 / 共62页
第7页 / 共62页
第8页 / 共62页
第9页 / 共62页
第10页 / 共62页
亲,该文档总共62页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
华中科技大学 硕士学位论文 嵌入式板级支持包通信平台研究与实现 姓名:李龙腾 申请学位级别:硕士 专业:计算机应用技术 指导教师:涂刚 20070605 华中科技大学硕士学位论文 I 摘 要 计算机技术的飞速发展使嵌入式系统得到了广泛的应用,板级支持包(BSP: Board Support Packet) 作为嵌入式系统开发和调试的重要工具, 其通信功能尤其重要。 随着板级支持包通信方式逐渐向多样化方向发展,设计独立的通信平台,提供统一 的通信接口,将有助于增强系统可扩展性和可移植性,缩短系统的研发周期。 在分析常见 B S P 与宿主机通信方式的基础上, 实现了一个分层式、模块化的通信 平台。通信平台通过标准的接口向板级支持包和主机软件提供通信服务,屏蔽了通 信设备硬件操作细节,增强了上层软件的可靠性及独立性。通信平台由设备端通信 模块和主机端通信模块两大部分组成。 设备端通信模块为板级支持包提供通信接口。整体架构通过分层式设计,分为 设备抽象层和设备驱动层。设备抽象层为上层应用程序提供了一套标准的、与设备 无关的通信接口,并且通过文件描述表、设备描述表和驱动描述表建立了从通信接 口到设备驱动的映射。 主机端通信模块利用面向对象的设计方法,实现了一个通信类库,包括通信接 口父类和派生的通信子类。通信接口父类定义了通信的标准接口,通信子类通过继 承及重载方法实现具体的通信操作。 在实现上述通信模块的基础上,搭建了测试环境,对通信平台的功能和性能进 行了测试及改进。最终的测试结果表明,通信平台可以为板级支持包和主机软件提 供高效、可靠的通信服务。 课题的研究成果为嵌入式板级支持包及主机软件提供了一个具有良好可移植性 和可扩展性的通信平台。分层式的设计思想使得板级支持包和主机软件之间的通信 更加可靠、高效;同时,模块化设计使通信平台可以方便移植到不同的硬件平台之 上,为进一步的研究工作提供了保障。 关键字:嵌入式系统,板级支持包,通信平台,设备抽象层 华中科技大学硕士学位论文 II Abstract Embedded system has been widely used with the rapid development of computer technology, BSP(Board Support Packet),as the important tools for development and debug of embedded system,communication function is more and more important. As BSP s communication method develope towards versatile direction, designing individual communication platform, providing uniform interface will benefit enhancing expandibility and portability, and reducing development period. After the analysis of communication mode between usual BSP and host, this article implements a layer- stepping and modularized communication platform, which provide communication service for BSP and host software, and mask hardware operation details of communication device, as a result, the reliability and independence of upper_layer software are enhanced. The platform is made up of two parts: communication module of device and communication module of host. The module of device provides interface function for BSP, the whole architecture is divided into two layers: Device Abstract Layer and Device Driver Layer. The Device Abstract Layer provides a set of standard communication interface functions unrelated with specific device, which is mapped to device drivers by file table,device table and driver table. The module of host is a class library that includes communication interface class and subclasses, designed by the object- oriented method. The interface class defines standard interface of communication, the subclasses realize communication operations. After the implementation of modules above, test environment is constructed, the function and performance of platform are tested and improved. The test result indicates that communication platform can provide high efficient and reliable service for BSP and host software. Research of this issue provides a communication platform with good portability and expandability for embedded BSP. Thoughts of step- layerring make the communication between BSP and host software more reliable and efficient; modularized design make it easy to port the platform to different system, and guarantee the more research work. Key words: Embedded system, BSP, Communication Platform, Device Abstract Layer 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在 文中以明确方式标明。本人完全意识到,本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密,在_年解密后适用本授权书。 不保密。 (请在以上方框内打“”) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 本论文属于 华中科技大学硕士学位论文 1 1 绪论 1.1 课题背景 嵌入式系统开发初期,硬件驱动测试和开发、核心引导和装载、目标板与主机 通讯和控制等将是开发的主要任务1。板级支持包(BSP)是一套能够独立运行于硬 件开发板的小型系统,它将负责目标板的初始化和提供对板上硬件操作的支持2- 4, 为操作系统及应用软件的开发提供一个良好的开发调试环境5- 6。 目前,BSP 与主机通信主要有串口、网口或 USB接口三种方式。串口的优点是 简单,易于实现,而且 PC 机上一般都有一个或多个串口,缺点是通信速度较慢,不 利于大批量数据的传输(如系统内核的烧写) ;USB接口速度快,可靠性高,但传输 距离有限7- 9;而通过网口进行通信不仅速度快、可靠性高,而且在移植了 TCP/IP 协议栈后,通过网口可以连接到局域网或广域网上进行远程操作,实现网上硬件测 试、网上升级、更新等非常实用的功能。然而,运行 TCP/IP 协议栈要占用额外的系 统资源(CPU、内存等) ,无法满足一些资源比较紧张的系统的要求,这三种方式各 有优点,可以互为补充,配合使用。 BSP 的开发和移植中,设备驱动的开发和移植占有很大的比重,上层应用和设 备驱动结合紧密10- 12,往往硬件平台发生变化时,设备驱动和上层应用都要进行重 新开发,BSP 的可移植性比较弱。另外,BSP 与主机通信的方式与嵌入式系统硬件 配置有很大的关系,当硬件平台采用新的通信方式时,也会给 BSP 的开发带来额外 的开销。 本课题属于项目“嵌入式板级支持包”的一部分,该项目由板级支持包和调试 器两部分组成,本课题主要目的是构建一个通用的通信平台,为板级支持包和主机 软件提供通信服务,屏蔽通信细节。通信平台支持多种通信方式(串行、USB、网 络) , 上层应用可以自由选择通信方式, 通过调用通信平台提供的接口函数进行稳定、 可靠、高效的通信。 华中科技大学硕士学位论文 2 1.2 国内外概况 在嵌入式系统中应用比较广泛的 BSP 有很多,功能上也有很大大差异,下面对 几种常见的 BSP 在通信方面的特点进行分析: 1Blob Blob13具有启动加载和监控两种模式14。用户在加电以后数秒内按键盘,Blob 放弃对操作系统的引导,进入监控模式。在监控程序的控制下,用户可以通过命令 行向系统发出命令启动下列操作:通过串口下载映像、擦除闪存内容、将内存中的 映像写入闪存、将闪存中的某个映像装入内存,并跳转到这个映像的入口等15。 Blob 的功能相对比较简单,在移植时编写串口和 FLASH 等设备的驱动即可。 Blob 与主机的通信方式比较单一,主要是通过串行接口,对通信接口没有统一的管 理,也没有提供统一的通信接口供上层应用调用。 2U- BOOT U- BOOT 支持 SCC/FEC 以太网、OOTP/TFTP 引导、IP 和 MAC 的预置功能; 可以在线读写 Flash、DOC、IDE、IIC、EEROM、RTC;支持串行口下载代码16; U- BOOT控制台提供 I/O 函数、内存申请和中断服务等,这些应用程序还可以在没有 操作系统的情况下运行,是测试硬件系统很好的工具17。由于传统的 BootLoader 都 分为 stage1 和 stage2,所以在 stage2 中添加中断处理服务十分困难18,比如 BLOB, 而 U- BOOT是把两个部分放到了一起,所以添加中断服务程序就很方便。 U- BOOT 的
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号