课程背景 |
|
VxWorks BSP开发高级班共计2天(含上、下午),主要是进行VxWorks下BSP的开发及调试方法以及高级技巧的学习,深入探讨如何根据单板情况选择正确的策略进行BSP的开发,如何高效的提取单板相关信息,解决BSP开发中的一些难点。课程中会结合实际的单板及代码讲解BSP开发中的流程、实用技巧以及新的技术,帮助学员短时间内理解消化和掌握这些高级技巧,并可以尽快应用到工程项目中去。 |
课程目标 |
|
通过课程的学习,学员将熟悉VxWorks下BSP的开发及调试方法,并通过实例,掌握开发和调试中常见问题的解决思路及技巧,熟悉常见驱动模块的设计方法,具备独立开发VxWorks下BSP的能力。课程目标包括: 1) 掌握VxWorks下BSP的开发职责,开发策略,开发环境及开发工具。 2) 熟练掌握VxWorks下系统的启动流程,以及对kernel的配置。 3) 掌握VxWorks下BSP的中断管理。 4) 掌握VxWorks下BsP的内存管理。 5) 掌握VxWorks下BSP的Timer管理。 6) 熟悉VxWorks下常用的驱动程序的开发方法。 7) 熟练掌握VxWorks下BSP的调试及常见问题的处理方法。 8)了解VxWorks6.x引入的新的技术,并掌握VxWorks 5.5.1到VxWorks 6.x BSP的移植方法。
|
入学要求 |
|
学员学习本课程应具备下列基础知识: ◆具备C语言编程经验; ◆具备设备驱动编程经验; ◆具备嵌入式系统软硬件基础知识; ◆对VxWorks操作系统有一定的了解; |
师资团队 |
|
【李 观】 ● 在国内外知名企业从事过多年VxWorks下BSP的开发工作,并多次进行相关的培训。在嵌入式系统软件、硬件开发方面具有多年的项目开发经验。熟悉VxWorks操作系统,对MIPS,PPC,XSCALE等体系架构有深入的理解,现为国外知名公司BSP开发的高级工程师。
【全老师】 ● 东北大学博士,主要从事计算机通信相关研究,在嵌入式系统软件、硬件开发方面具有多年的项目开发经验。熟悉包括VxWorks在内的多种嵌入式操作系统,熟悉PPC、MIPS等体系结构,从事过核心路由器、三层交换机、二层交换机以及机顶盒等嵌入式系统研发工作。
更多师资力量请参见华清远见师资团队。 |
教材 |
|
◆《华清远见-VxWorks BSP开发高级班讲义》 |
班级规模及环境 |
|
为了保证培训效果,增加互动环节,我们坚持小班授课,每期报名人数限15人,多余人员安排到下一期进行。 |
时间地点 |
|
北京总部: 上课地点:北京清华大学 连续班(连续上课):2008年3月15日,2008年5月17日,2008年6月14日
上海分中心: 上课地点:上海徐汇区银海大厦A座2层 连续班(连续上课):2008年3月22日,2008年5月3日,2008年6月28日
每期班名额有限,报满即停止报名,请提前在线或电话预约 |
学时费用 |
|
◆课时: 共2天 ◆培训费用(含教材费和午餐费):1800元 ◆认证费(可选):300元(考核通过,颁发中国软件行业协会嵌入式系统分会认证的《VxWorks BSP开发高级工程师》证书) >>单击查看证书样本 ◆外地学员:代理安排食宿(需提前预定)
同时报选《VxWorks应用开发培训班》,即享受300元优惠!
报选此课程可获100元折价劵! |
质量保障 |
|
1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听; 2、培训结束后免费提供一个月的技术支持,充分保证培训后出效果; 3、培训合格学员可享受免费推荐就业机会。 |
课程进度安排 |
| 时间 |
课程大纲 |
课程内容 |
|
第一天 |
9:00 | 16:30 |
1. VxWorks下BSP基本知识的介绍 1.1 VxWorks下BSP的职责,组成及开发流程综述 1.2 VxWorks下系统启动流程 1.3 BSP及操作系统的文件组织结构 2. BSP需要关注的嵌入式系统的硬件 2.1 各种CPU体系架构所需要关注的:指令集,MMU的支持,CACHE,中断处理,硬浮点的支持,大小字序 2.2 总线:总线周期,仲裁,数据传输,中断策略 2.3 存储器:各种存储介质的配置及访问 2.4 设备:Timer,串口,网口 3. 开发环境及策略 3.1 BSP的开发流程及方法 3.2 开发环境的搭建,各种调试工具 3.3 调试BootRom的方法及技巧 4. 系统启动流程概述 4.1 系统启动流程介绍,启动流程图 4.2 BSP目录下各文件的属性及用途 4.3 编译满足要求的各种BootRom及VxWorks程序映像,反汇编,生成map文件 5. BootRom启动流程分析 5.1 单板相关的文件 5.2 系统启动后第一个文件romInit.s的组成及功能 5.3 调试BootRom需要注意的问题:汇编指令,PIC,关于栈 6. 启动kernel前对硬件的初始化 6.1 启动kernel之前代码流程介绍 6.2 硬件的初始化,sysHwInit(),重要API的实现 6.3 内核的激活 6.4 VxWorks内核的调试:启动WDB,调试通道的配置:串口,网口
|
|
【辅助实验】 1. Tornado的目录结构的熟悉,通过一个BSP实例,熟悉BSP的文件组成; 2. 通过一个单板实例,掌握如何根据现有资源获得单板的信息,满足BSP开发的需要; 3. 通过一个处理器实例,掌握如何从芯片资料中获取BSP开发有用的信息的方法; 4. BSP开发环境的搭建以及各种软件调试工具的使用; 5. 通过一个BSP实例,分析系统的启动,使学员清晰VxWorks的启动流程; 6. 通过BSP实例,使学员熟悉BSP工程的搭建方法,makefile及romInit.s文件的设计; 7. 通过BSP实例,分析sysHwInit()及重要API的实现; 8. 通过BSP实例,使学员掌握如何启动WDB,如何配置调试通道。 |
|
第二天 |
9:00 | 16:30 |
7.存储管理 7.1 内存的分配,BSP中各种地址的意义 7.2 MMU:MMU的使能,配置以及操作系统的接口 7.3 CACHE: CACHE的使能,配置以及操作系统的接口 8.中断管理 8.1 中断管理概述:中断向量,中断栈,实现中断管理的函数 8.2 中断服务程序的连接 8.3 操作系统关于中断管理的库介绍 8.4 中断控制器的初始化 9. 时钟和定时器 9.1 系统时钟的初始化及配置,中断的连接,服务程序的实现,使能及关闭 9.2 关于辅助时钟及其与系统时钟实现的差异 9.3 时间戳:时间戳的用途,实现 10.BSP相关的设备驱动程序 10.1 串口驱动程序的设计及加载 10.2 END型驱动的设计及加载 10.3 标准USB接口驱动的实现 10.4 TFFS的实现及使用 11.VxWorks 6.x新的技术的介绍及移植方法 11.1 VxWorks 6.x BSP引入的新技术:VxBus,存储保护,错误监测及报告,共享内存 11.2 VxWorks 5.5.1到VxWorks 6.x BSP的移植 11.3 BSP开发中信息的获取以及求助渠道 11.4 BSP开发经验的总结 |
|
辅助实验 1. 通过一个BSP实例,分析使学员熟悉VxWorks下内存的分配; 2. 通过PPC BSP实例,分析使学员熟悉MMU及CACHE的配置以及操作系统的接口; 3. 通过一个具体的单板,分析使学员熟悉如何配置中断控制器完成中断的挂接及使能,并熟悉操作系统的相关接口; 4. 通过一个BSP实例,分析使学员熟悉系统时钟的实现及配置以及如何实现时间戳; 5. 以NS16550的sio驱动为例,通过分析使学员掌握串口驱动的开发方法; 6. 通过一个具体的END型驱动,分析使学员掌握以太网口驱动的开发方法; 7. 以Intel 28F128J3X型Flash为例,通过分析使学员掌握TFFS的实现; 8. 以一个具体的VxBus设备驱动为例,通过学习使学员掌握VxBus下驱动的开发方法。 |