当前位置:文档之家› 06_解构北京大学嵌入式系统课程建设

06_解构北京大学嵌入式系统课程建设

专/题/策/划“嵌入式系统”课程是“北京大学电子信息科学基础实验中心”为信息科学技术学院电子类高年级本科生和研究生新开设的一门以实验为主的选修课,目的是通过对嵌入式系统组成原理的学习和专题实验、项目实验的训练,培养学生的综合创新能力。

“嵌入式系统”实验课程的建设注重对学生进行科研综合方法的培养,包括需求分析、方案论证、资料搜集、系统设计、电路调试、系统测试、报告撰写等。

除了培养学生的分析问题、解决问题的能力外,还要引导学生发挥想象力,提出问题或见解,即培养创新能力。

对于没有学过的或跨学科的知识,引导学生学会主动学习、理解,最终应用于系统中去。

“嵌入式系统”课程介绍1.学时学分总课时:60学时(理论课:16学时,实验课:44学时);学分:2学分。

2.课程内容(1)理论课共授课8次,每次2学时,共需4周时间。

具体内容如下:* 嵌入式系统概述* ARM体系结构与嵌入式CPU* 嵌入式系统平台——SitSangBoard* 嵌入式Linux操作系统原理* 嵌入式Linux软件开发* 嵌入式Linux图形程序设计* 嵌入式Linux驱动程序设计* 嵌入式应用系统设计开发通过上述理论课的学习,使学生基本掌握嵌入式系统的基本理论和嵌入式系统的开发过程,以及Intel SitSang开发平台的组成、嵌入式Linux操作系统的开发原理,为下一步的实验课程打下基础。

(2)实验课实验课分为两个阶段,专题实验和项目实验。

专题实验共有6次,每次4学时,共24学时(6周)。

专题实验具体内容如下:实验一 SitSang Board组成和原理实验二 ARM汇编程序设计实验三 嵌入式Linux内核实验四 嵌入式Linux程序设计实验五 嵌入式Linux图形程序设计实验六 嵌入式Linux驱动程序设计在专题实验中,学生自由组队三人一组,每次实验又分为验证性实验、修改性实验和设计性实验三个层次。

硬件开发平台采用IntelSitSang(PXA255)板。

第一个实验用来熟悉开发平台的硬件,第二个实验用来了解比较底层的ARM汇编程序的开发方法,其他四个实验都是围绕 Linux操作系统来进行的。

嵌入式Linux操作系统内核——zImage采用的是经过Intel公司修改的2.4.19版本;嵌入式文件系统采用的是JFFS2,它是专门为Flash设备设计的文件系统;为了避免频繁的Flash读写和节省将文件系统烧录到Flash中的时间,在实验中我解构北京大学嵌入式系统课程建设北京大学信息科学技术学院 王志军 杨延军 段晓辉 赵建业 张云峰/文们主要采用网络文件系统(NFS),它使目标系统在运行的时候通过网络在主机上得到文件系统的内容,而不需要访问Flash设备,大大提高了开发效率;图形开发选择qtopia-1.7.0作为软件平台,开发工具主要使用qt-embedded-2.3.7;驱动程序的设计主要涉及了加速度计、测试LED和面板按钮,希望学生对驱动有初步的了解,在专题实验中并没有设计很复杂的驱动。

项目实验仍为三人一组,共20学时,需5周时间。

实际操作上,项目实验被安排在开放实验室,学生可以自由安排其实验时间,每个学生实际花费的时间远远多于20学时。

项目实验的命题由教师推荐和学生自选,这样可以调动学生的创造潜能,达到培养学生综合创新能力的目的。

推荐的项目实验题目如下:* MP3播放器* 简单PDA(记事本、通信录、备忘录等)* 简单E-mail编辑、收发器* 简单游戏(游戏杆控制)在项目实验的管理中,每个实验教师负责几组学生,每周至少一次对学生进行检查、督导。

同时,设有两个检查时间点:一个是项目实验开始的一周后,要求学生提供一份书面的项目方案设计报告,包括需求分析、方案论证、系统功能、资源分配、任务分工及任务时间表等;另一个检查点为项目实验结束时的答辩验收,每组答辩时间为15分钟,包括项目系统演示5分钟,PPT讲演5分钟和提问5分钟,届时应准备好:项目实验报告、PPT讲演稿和项目演示系统。

(3)成绩评定专题实验:40分(实验表现:20,实验报告:20);项目实验:60分(系统演示:30,实验报告:20,答辩:10)。

(4)参考教材[1] 嵌入式系统实验讲义.北京大学信息科学技术学院内部教材.[2] 陈章龙等译.嵌入式技术与系统- Intel Xscale 结构与开发[M].北京航空航天大学出版社,2004.[3] 王勇等译.GNU/Linux 编程指南[M].北京:清华大学出版社,2000.[4] 田泽等译.ARM SoC体系结构[M].北京航空航天大学出版社,2002.“嵌入式系统”课程教学效果通过理论课的学习,学生基本掌握了嵌入式系统的组成和基本原理、ARM体系结构、嵌入式操作系统的基本原理,以及嵌入式系统的开发过程等。

通过实验课的训练,学生不仅提高了实验技能,更重要的是提高了综合创新能力。

实验中学生被分为三人一组,这使得学生学到了任务划分和相互合作,培养了学生的团队精神;课程内容具有一定的深度,很多知识点学生都是第一次接触,这使得学生学会了主动学习、广泛搜集资料,综合能力得到训练;碰到问题,学生敢于面对,并积极努力去解决,培养了学生的顽强拼搏精神;项目实验中,学生开动脑筋,完成了很多他们感兴趣的题目,并力求将项目做得完美,这些培养了学生的创新能力;项目实验最后的答辩验收,则训练了学生讲演、快速反应和推销自己的能力。

以下是学生完成的、具有代表性的项目实验题目:* 便携式MP3播放器* 便携式MPEG4播放器(使用了Intel IPP库)* 便携式E-mail收发终端* 便携式旅游信息终端* 基于Linux的PDA的设计与实现* 基于Linux的可视电话的设计与实现课程的进一步改进通过“嵌入式系统”课程对两届学生的开设,我们积累了一些经验,同时也存在着一些需要继续改进的方面。

从学生的反馈上看,该课程对于四年级的本科生来说,涉及的知识面广、内容偏深:既要求学生有硬件电路知识,又要有计算机体系结构、操作系统等方面的知识,还要熟悉编程语言及应用系统组成。

在有限的学时内,学生们很难完全掌握和消化,往往占用了他们很多的课余时间。

因此,如何在有限的学时内,让学生基本掌握嵌入式系统的基本知识,培养他们的综合创新能力,是课程进一步改进的重点。

(1)进一步系统化理论课程内容目前,理论课由几位教师分别以讲座的形式向学生授课。

在课程内容上,虽然大体上有重点划分,但仍需要进一步统筹规划、突出重点。

重点讲授需要学生掌握的基本知识,而不是面面俱到,进一步的提高可由学生凭个人兴趣自学完(下转第8页)信、实时操作系统等知识范畴,如果将这个系统应用在化工厂,还要涉及化工的专业知识。

要设计出一个完整的比赛作品,学生必须拓展他的知识面,去了解别的专业知识。

因此,指导教师本身应该有相对宽广的专业知识视野,在比赛过程中引导学生正确运用不同的专业知识。

从指导比赛的角度而言,我感到要侧重以下几个方面的工作。

* 学生的培训培训的重点在于教授方法,而不是公式。

能够通过选拔参加比赛的学生通常自学能力很强。

培训时不必拘泥于细节,而应重点介绍设计方法和工程经验,同时注意各种专业课程知识的融会贯通,使学生能够借鉴他山之石,或举一反三,学习从不同的角度思考问题。

* 参赛选手的组织最早我们组织参加嵌入式系统邀请赛,学生是按照专业划分,一般都将一个专业的学生分在一组。

很快我们就发现了这样做的弊端:同组学生的知识结构相近,整个团队的知识面狭窄,很难做出相对成熟的作品。

让电子工程的学生完成软件设计任务,其完成的质量很难让人满意,而对于计算机的学生而言,让他在系统板上扩展硬件也是很困难的事情。

将不同专业的学生混编,对于作品的设计进行垂直分工,硬件扩展、OS与驱动移植、应用程序分别由不同专业的学生完成,让他们能够各自发挥所长,从而能够设计出高质量的作品。

同时通过这样的实践过程,学生也能够接触到自己专业以外的知识信息。

* 作品的选题作品选题应当突出创新,贴近日常生活。

如果一味强调作品性能而不考虑实用性,则比赛也失去意义了。

突出创新,贴近生活也能让学生将专业知识运用到更加广阔的领域。

创新的选题需要参赛队员细致观察生活,具有发散性思维,指导教师应避免越俎代庖,直接命题,抹煞学生的创新激情;与此同时,对于收集来的各种思路,指导教师可以指出大致的突破方向,帮助学生分析其研究意义,或提供类似研究的最新进展情况,避免学生自主命题的盲目性。

* 作品项目的管理比赛进入实施阶段,最好能够引入项目管理的流程。

在每组参赛学生中选出一人作为小组负责人,由指导教师帮助进行方案分析、任务分解和工作细化,整理项目进行所需的各种资源,建立进度表。

对于项目实施中不可预知的风险,指导教师最好能够指导队员选取备用方案。

作品实施过程中必须重视文档管理,让学生养成写工作文档的习惯,各人之间的接口协议和工作交接文档必须清晰明了。

做好上述几项工作才能保证作品能够在规定时间内完成。

综上所述,嵌入式系统邀请赛指导教师这个角色不同于传统的教学实验指导教师,他在比赛中的作用类似项目经理,同时还要做好信息收集和后勤工作。

完成整个比赛,队员们很辛苦,但是能够体验到团队合作的乐趣和成功的喜悦。

作为比赛的指导教师,这样的比赛也促使我去拓展知识视野,培养锻炼工程管理能力。

同时类似这样的比赛也为我们改革教学实验提供了动力和契机。

成。

另外,课程内容中多增加一些实例,以帮助学生理解和消化。

(2)加快理论课教材建设嵌入式系统涉及的知识面广,参考资料也非常多,泛泛地为学生指定几本参考书,这使得学生无时间遍览,也很难抓住重点。

嵌入式系统课程的进一步建设,应该根据该课程的目标和内容的需要,编写一本理论课教材。

这样既可以帮助学生掌握嵌入式系统的基本知识,又节省了学生的时间。

这项工作目前正在进行中。

(3)增加演示项目实验对于专题实验,学生可以按照实验讲义一步步地完成。

但到了项目实验阶段,学生普遍感觉跨度较大,往往无从下手,需要教师多次的引导和帮助。

这是因为学生习惯于单元实验,而缺少系统实验的训练。

为了帮助学生项目实验能迅速上手,我们的嵌入式系统课程准备在专题实验结束后,增加一个演示项目实验。

在项目的方案设计、理论推导、系统功能、性能测试等方面为学生提供一个完整的实例,相信一定会对学生有所帮助。

“嵌入式系统”课程的建设,适应了当代电子信息科学技术领域对专业技术人才的要求,为高年级本科生及研究生提供了一个较好的高端选修课。

四年的开课实践证明:本课程较全面地训练了学生们的综合创新能力,受到了学生们的欢迎。

(上接第12页)。

相关主题