论文部分内容阅读
随着嵌入式技术的飞速发展和网络通信事业的推进,宽带接入网络得到广泛普及。宽带业务的迅猛发展和接入用户的大量激增,对网络通信系统提出了更高的要求和巨大的挑战。顺应宽带接入网络的发展趋势,对嵌入式技术进行研究,为高端嵌入式电信设备提供有效的解决方案成为网络通信领域的研究热点。BSP(Board Support Package)是嵌入式系统中介于底层硬件和上层软件之间的底层软件包,完成底层硬件的初始化和操作系统的引导,并为上层软件提供底层接口,是嵌入式应用程序开发的关键步骤和底层基础。 本文以华为公司开发接入网GPON(Gigabit-Capable PON)系统中电信局端设备的项目为背景,重点研究VxWorks嵌入式实时操作系统在以飞思卡尔公司的PowerPC处理器为核心的硬件平台上的BSP实现,主要工作概括如下: 1、介绍了公司自主研发的PowerPC硬件平台,并对VxWorks操作系统及其BSP技术进行了分析。根据BSP中数据与算法分离的思想,提出了一种BSP代码平台化、模块化和阶段性的结构设计,提升了BSP代码的通用性。通过对BSP相关源文件的修改和对最小CPU系统的硬件参数的配置,构建了最小系统的BSP引导映像,实现了VxWorks在目标单板上的启动。 2、为了提升系统的可靠性,提出一种双BIOS的优化设计方案。该方案对原BIOS进行备份并将其存储在原BIOS的相邻空间,通过软硬件处理,实现双BIOS启动区的切换。该设计显著提高了系统的稳定性和可维护性,同时给系统开发和调试带来极大方便。 3、在最小系统BSP实现的基础上,完成了系统各设备驱动程序的设计。包括NorFlash、串行设备、网络设备、IIC总线及其设备和FPGA设备的驱动和初始化,为操作系统提供了底层驱动接口。其中,针对NorFlash使用寿命的限制,通过在写操作中进行原数据与待写入数据的比较来减少Flash的擦除次数,实现Flash驱动程序的优化,提升了系统的可维护性。同时,基于IIC总线的常用性,通过对IIC总线驱动进行分层,设计了一种通用的代码架构,提高了IIC总线驱动的可移植性,并在此基础上完成了IIC设备中时钟芯片的初始化。由于传统FPGA设备的加载效率较低,通过对加载方式的改进,提升了加载效率,节约了系统启动时间。 4、为了验证系统的正确性和稳定性,对系统进行功能测试和硬件测试。针对存储器测试算法的故障覆盖率和测试效率不能兼顾的现状,提出了一种新的棋盘走步测试算法。测试结果表明该算法简单高效,并在一定程序上提升了系统的可靠性。