|
课程背景
|
|
本课程是武汉集成电路设计工程技术研究中心和ATC,正式面向高年级在校本科(含专科)生和低年级研究生推出的针对性课程。本课程一直用于企业内训市场,得到了企业客户的很高评价。本次正式推出的课程内容加强了入门和工具的介绍,保留并增加了大量、扎实的实验训练,但在理论授课上依然保持了高水准。
|
|
课程目标
|
|
参加ARM Linux系统开发培训班可以使学员快速掌握嵌入式系统开发的流程,系统移植的方法,Bootloader的原理,可以编写自己的Bootloader。学习本课程的学员能够熟练进行基于ARM的Linux系统移植和裁剪,并胜任嵌入式系统相关的项目开发。
|
|
培养对象
|
|
嵌入式相关领域的专业人士;
具有开发和设计经验的硬件或软件开发工程师;
系统移植工程师;
希望从事嵌入式系统开发的高年级本科生(含专科)或研究生;
|
|
入学要求
|
|
学员学习本课程应具备下列基础知识:
◆ 熟悉C语言;
◆ 熟悉汇编语言;
◆ 了解嵌入式系统的基本知识;
◆ 参加过ARM开发培训班或相关ARM培训,有ARM开发经验;
|
|
师资团队
|
|
【赖老师】
● 清华大学精密仪器系硕士,资深嵌入式系统工程师。原北京某科技有限公司创始人兼CTO,现任某国内知名企业嵌入式事业部总经理。中国第一款无驱动U盘发明人。一直从事嵌入式系统设计,对嵌入式系统和消费类电子产品设计有深厚经验。
■ 研究方向:嵌入式系统设计
【张老师】
● 资深IC设计工程师,资深嵌入式系统设计工程师,ARM认证培训讲师。现任武汉集成电路设计工程技术研究中心研发部经理,华中地区ARM ATC负责人。曾任国内排名前十的集成电路设计公司SoC部项目经理、流程管理经理。一直从事大规模/超大规模数字集成电路,数模混合电路设计和嵌入式系统设计,对Multimedia processor有较深入的研究。
■ 研究方向:大规模/超大规模数字集成电路,数模混合电路设计和嵌入式系统设计
【余老师】
● 华中科技大学教师,硕士生导师,资深IC设计与系统工程师,ARM认证培训师,Solaris(SUN)培训师。现在华中科技大学电子系超大规模集成电路与系统研究中心工作。曾任武汉亚芯微电子有限公司项目(产品)经理。一直从事混合信号集成电路与集成系统方向的教学与研发工作,项目(产品)经验丰富。
■ 研究方向:混合集成电路与嵌入式系统设计
|
|
教材
|
|
《ARM Linux系统移植教材》
《ARM Linux系统移植实验指导书》
|
|
实验环境及班级规模
|
|
为了保证培训效果,增加互动环节,我们坚持小班授课,每期报名人数限15人,多余人员安排到下一期进行。人手一套实验环境:ARM开发板(单击查看)
|
|
开班时间
|
|
小班授课,滚动开班,最多15人
具体请咨询
Tel:027--87611256
|
|
学时费用
|
|
◆课时: 共6天,每天8学时,总计48学时
◆培训证书:培训合格学员可获ARM公司全球统一培训认证证书
◆外地学员:代理安排食宿(需提前预定)
单击查看退费规定说明>>>
|
|
最新优惠
|
|
该课程的最新优惠信息请拨打咨询电话咨询
Tel:027--87611256
单击查看优惠制度说明>>>
|
|
质量保障
|
|
1、免费重听,报名参加了该课程,可以享受一次免费重听,享受和新学员同等待遇;
2、培训结束后免费提供一个月的技术支持,充分保证培训后出效果;
3、学员在培训期间缴纳一定押金可免费租借实验开发板,方便学员利用课余时间巩固消化课程内容。
4、培训合格学员将加入教育中心人才库,享受免费的就业推荐。
|
|
课程进度安排
|
|
时间
|
课程大纲
|
|
第一天
|
|
学习目标
|
嵌入式Linux开发环境构建
目标:通过今天课程的学习,学员能掌握嵌入式Linux交叉开发环境的搭建、交叉编译工具链的使用、交叉编译工具链制作的原理、及学会通过crosstool制作自己的交叉工具链。
|
|
8:30
|
12:00
|
1.1 交叉开发环境介绍
1.2 编译交叉开发工具链
1.3 配置主机开发环境
1.4 建立交叉开发环境
1.5 编译器和二进制工具详解
1.6 交叉调试应用程序
|
|
13:00
|
17:00
|
【实验】
(1) 安装开发工具和文件
(2) 配置超级终端/minicom
(3) 配置TFTP网络服务
(4) 配置NFS网络服务
(5) 引导目标板启动Linux内核
(6) 制作crosstool交叉工具链
(7) 交叉调试应用程序
|
|
第二天
|
|
学习目标
|
开发系统引导程序
目标:理解嵌入式linux引导程序的原理,掌握如何在S3C2410硬件平台上移植u-boot。
|
|
8:30
|
12:00
|
2.1 Bootloader介绍
2.2 u-boot工程介绍
2.3 u-boot的编译使用
2.4 u-boot源码分析
2.5 u-boot资源分配
2.6 u-boot移植过程
|
|
13:00
|
17:00
|
【实验】
(1) u-boot常用命令
(2) 添加u-boot新命令
(3) 设置u-boot环境变量
(4) 配置编译u-boot
(5) 移植FS2410的u-boot-1.3.4
● 支持网卡、串口功能
● 支持从nor、nandflash启动
● 支持nor、nandflash烧写
● 支持yaffs2、jffs2文件系统烧写
● 支持u盘文件读取
|
|
第三天
|
|
学习目标
|
配置编译Linux内核
目标:熟悉内核的原码结构和kbuild Makefile语法;掌握和内核、驱动模块编译相关的原理及方法。
|
|
8:30
|
12:00
|
3.1 Linux内核介绍
3.2 Linux内核特点
3.3 Linux内核源代码结构
3.4 Linux内核选项解析
3.5 Linux内核编译链接
3.6 内核模块编译、使用方法
|
|
13:00
|
17:00
|
【实验】
(1) 配置交叉开发环境
(2) 熟悉菜单配置文件的组织结构
(3) 熟悉内核配置过程选项
(4) 加入Kconfig新选项
(5) 编译交叉开发环境所需要的内核
(6) 在内核中加入自己的字符设备程序
|
|
第四天
|
|
学习目标
|
移植Linux内核源码
目标:通过今天课程的学习,学员能够熟悉内核启动流程、掌握内核移植的一般方法、分析平台相关代码结构,并能够自己动手移植高版本内核支持FS2410开发板。
|
|
8:30
|
12:00
|
4.1 Linux内核移植介绍
4.2 Linux内核移植平台相关代码分析
4.3 动手修改Linux内核源代码
4.4 分析编译过程错误和宏定义的关系
4.5 Linux启动过程源代码分析
4.6 2.6版本的内核平台设备结构介绍
|
|
13:00
|
17:00
|
【实验】
(1) 配置编译高版本的Linux内核
(2) 移植高版本(linux-2.6.26)内核支持FS2410板
● 网卡驱动移植
● mtd支持及flash分区方法
● yaffs2文件系统移植
● sd卡驱动
● 液晶支持
● u盘功能
(3) 分析解决编译过程中的错误
|
|
第五天
|
|
学习目标
|
集成部署Linux系统
目标:集成部署Linux系统,构建自己的一个系统出来。
|
|
8:30
|
12:00
|
5.1 Linux文件系统制作
5.2 Linux系统集成测试
5.3 文件系统和存储设备的选择
5.4 部署Ramdisk文件系统的过程
5.5 部署JFFS2文件系统的过程
5.6 部署Yaffs2文件系统的过程
|
|
13:00
|
17:00
|
【实验】
(1) 制作最小的文件系统
(2) 添加udev支持
(3) 部署ramdisk文件系统
(4) 部署cramfs文件系统
(5) 部署jffs2文件系统
(6) 部署yaffs2文件系统
(7) 配置u-boot使系统独立运行
|
|
第六天
|
|
学习目标
|
调试Linux内核及优化linux内核
目标:掌握内核调试的常用方法、内核优化的方法策略。。
|
|
8:30
|
12:00
|
6.1 Linux内核调试概述
6.2 Linux内核的打印函数
6.3 Linux内核启动过程错误分析
6.4 解析oops信息
6.5 常用调试方法和工具
6.6 基本的驱动程序分析
6.7 系统启动时间优化
6.8 电源管理方法
● 动态、静态功耗介绍
● 嵌入式处理器对电源管理的支持
● 嵌入式linux电源管理结构
● 用户层电源管理策略
● 设备驱动层电源管理策略
|
|
13:00
|
17:00
|
【实验】
(1) 通过基本调试手段解决内核启动过程错误
(2) 分析、处理oops错误
(3) 优化系统,加快系统启动速度
(4) 优化系统,降低系统功耗
|