计算机专业哪个好_高校计算机专业嵌入式系统教学及实验平台研究

  摘要:在分析嵌入式系统结构和嵌入式系统岗位技术要求的基础上,结合计算机专业特点,构建了高校计算机专业嵌入式系统教学及实验平台。对规范和培养嵌入式系统人才起着重要的作用。
  关键词:嵌入式系统;课程体系;实验平台
  中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)15-3647-04
  物联网、云计算目前已经成为信息产业的主流方向,在这个主流方向中,最核心、最关键的部分是嵌入式系统。调查数据【1】显示,市场对嵌入式人才的需求缺口巨大。就高校而言,培养符合行业要求的人才是高校的职责,而人才的培养又始终离不开切实可行的教学计划和课程体系,制定符合行业实际的教学计划和课程体系,是培养人才的关键。而开设什么样的课程来培养符合行业要求人才,又要依据行业特点和对人才的技术要求来确定,否则就会偏离行业要求,满足不了行业需求。在2008年《普通高等学校高职高专教育指导性专业目录(试行)》里已经规划了嵌入式技术与应用专业(专业代码510121),但还没有形成一门独立的本科专业,近几年高校中的电子专业、计算机专业以及机电与自动化专业、通信专业都相继开设了嵌入式系统相关课程,大都针对本科高年级学生或者研究生开设了嵌入式系统方向。从国内不同高校不同专业开设的嵌入式系统课程来看,各具特色,有些硬件课程开设的多,有些软件课程开设的多。这主要是由于嵌入式系统本身包含软件与硬件两个层次,在设计与应用方面,又具有软硬件协同工作的特点,既要依据硬件设计软件,又要依据软件确定硬件,不能简单的说哪个更重要,只能从应用的角度讲其侧重点不同。因此对于不同专业开设的嵌入式系统课程,不能一概而论。本文主要从嵌入式从业人员进行嵌入式系统开发所具备的知识要求和技术要求为依据,确立计算机专业本科生从事嵌入式系统开发应具备的基础知识和技能,并着重对计算机专业本科生嵌入式系统的课程体系构建内容及实验平台方案进行探讨和研究。
  1嵌入式系统概述
  嵌入式系统是以计算机技术为基础、以应用为中心、软件硬件可裁剪并且对系统的功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。从其概念来看,嵌入式系统是专用计算机系统,应该包含硬件系统和软件系统,具体地说,一个嵌入式系统硬件以微处理器为核心集成存储器和系统专用的输入/输出设备;嵌入式系统软件包括初始化代码及驱动、嵌入式操作系统和应用程序等,这些软件有机地结合在一起,形成系统特定的一体化软件。一个典型的嵌入式系统应包含嵌入式硬件、嵌入式操作系统和嵌入式应用软件三个部分构成。
  由于嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物,因此嵌入式系统是应用于特定环境下,针对特定用途来设计的系统,所以不同于通用计算机系统,它的硬件和软件都必须高效率地设计、“量体裁衣”、去除冗余,力争在较少的资源上实现更高的性能。嵌入式系统的基本特点就是“嵌入”、“专用性“和“计算机性”。由于系统的这些特性,导致系统的存在形式是多样的和面向特定应用的,并且对成本、功耗、可靠性和实时性特别关注,因此在嵌入式微处理器和嵌入式操作系统的选择上都要考虑这些特点。
  2嵌入式系统专业人才岗位及核心能力分析
   2.1嵌入式系统的技术研发岗位划分与设置
  从事嵌入式技术的岗位主要是企业的研发、生产、销售部门,当然还有其它辅助部门,在此主要针对研发部门的岗位进行分析。嵌入式系统研发部门岗位的设置,离不开嵌入式系统的结构和开发过程,设置什么样的岗位、需要何种学历的人才都与嵌入式系统的开发过程紧密相关。就嵌入式系统而言,总体上可划分为硬件和软件两部分,硬件一般由高性能的微处理器和外围的接口电路组成,软件一般由硬件抽象层、嵌入式操作系统、软件应用平台和应用程序等组成,如图1所示。
  硬件层是整个嵌入式操作系统和应用程序运行的平台,包括输入输出接口/驱动电路、处理器、存储器、定时器、串口、中断控制器、外设器件、图形控制器及相关系统电路等部分。对于硬件层的设计开发要有较深的硬件开发经验,这些岗位一般都需要资深的硬件工程师。中间层包括硬件抽象层(HAL)或板级支持包(BSP),负责对各种硬件功能提供软件接口,包括硬件初始化、时钟管理、定时器管理、中断处理、总线管理、内存地址的映射等。它位于底层硬件和操作系统之间,是二者之间的桥梁。这个层次的设计开发不仅要精通底层硬件结构,还要熟悉上层的操作系统,主要工作是开发设备驱动程序。这部分工作需要有丰富的软硬件件研发经验才可以胜任。软件层主要包括操作系统和软件应用平台,操作系统主要是实现资源的访问和管理,完成任务调度,支持应用软件的运行及开发,软件应用平台则是为了提高开发速度与软件质量,一些应用提供商开发了一些可重用的应用平台,封装了一些常用的功能,同时提供API接口,可以在此基础上进行二次开发。这些岗位要求具有丰富的嵌入式操作系统开发经验和软件工程能力。功能层主要指的是应用软件层,位于嵌入式系统层次结构的最顶层,直接与最终用户交互。针对各种特定功能来编写应用程序,实现系统的功能应用。主要是进行大量的C、C++或JAVA语言编程,不需要更多涉及底层硬件,大都是基于操作系统之上的编程。这些岗位要求就有丰富的嵌入式应用软件开发能力。从嵌入式系统开发流程看,还可以对硬件层、中间层、软件层、功能层四个层次的研发工作进一步细化。
  2.2技术研发岗位从业人员核心能力分析
  对于从事嵌入式系统研发的技术人员而言,必须具有与岗位匹配的核心能力才可以胜任工作。文献[3]就嵌入式整个行业的从业人员在不同岗位应具备的知识和能力进行了描述。由于目前国内就嵌入式人才的评估和认证只有嵌入式工程师认证,因此本文将从硬件设计、软件设计、系统架构、软、硬件测试这五类技术研发岗位进行研究,来确定相应人员应具备的知识和能力要求。对于每一类岗位,将从岗位工作任务、岗位知识能力、主要技能和核心能力这四个方面就行研究,其中岗位工作任务是指该岗位应完成日常基本工作的事务范围,岗位知识能力是指该岗位应具备的基本知识要求,主要技能是指该岗位技术能力的要求范围,核心能力是指该岗位工作主要能力要求。分析结果如表1所示。
  2.3技术研发岗位知识要求
  表1就目前嵌入式技术人员的五种岗位要求从四个方面进行了分析,从分析的结果看,对于硬件设计及测试人员而言,应具有的知识点:①熟悉或者掌握模拟电子线路、数字电路,单片机等基本的硬件电子电路设计知识;②熟悉和掌握C语言或者C++语言及接口电路程序设计;嵌入式系统硬件的设计、嵌入式系统的程序设计③至少熟悉l到2种基本的EDA工具,如MODELSIM、Quartus? lI、Protel等;④熟悉各种常用工具和仪器仪表,熟悉电子元器件性能分析。软件设计软件测试人员而言,应具有的知识点:①熟悉Linux,WinCE,Vxworks等操作系统的各种软件开发环境;②熟悉GUI开发过程、熟悉网络编程、多任务编程等;③精通C语言、汇编语言;④熟悉嵌入式系统硬件的设计、嵌入式系统的程序设计。⑤熟悉嵌入式软件开发模式及方法,熟悉白盒测试、黑盒测试和回归测试,熟悉单测试、集成测试、系统测试过程及测试的误区的分析。系统架构人员应具有的知识点:①熟悉嵌入式软件工程;②熟悉面向对象和结构化软件开发方法;③精通常用软件开发语言;④熟悉软件架构模式和设计模式,熟悉常用软件建模技术。
  
  3计算机专业嵌入式系统课程体系及实践平台的构建及分析
  3.1计算机专业嵌入式系统课程体系及实践平台的构建
  从嵌入式系统专业人才岗位及核心能力分析来看,对于计算机专业,在构架课程体系时,应该结合计算机专业特点及嵌入式技术研发岗位和应具备的知识能力出发,可从理论与实践两个方面,去制定切实可行的专业课程体系。本文将从理论课程体系和实践课程体系两个方面阐述课程体系和实践平台的构建。其平台结构如图2所示。
  在图2中,计算机专业基础和核心课程体系可依据计算机专业相关培养课程体系及目标确定,本文不再赘述。对于嵌入式系统理论课程体系可分别从硬件课程、语言课程、专业课程三个方面进行构建,其中硬件课程可包含有电路与模拟电子技术、数字逻辑电路、计算机组成与体系结构、微机原理与接口、ARM体系结构与编程、电子线路设计、计算机控制系统、单片机原理与应用、DSP技术及应用、FPGA设计基础等课程;语言课程可包含有C语言程序设计、VC++程序设计、离散数学、数据结构、VB程序设计、C#程序设计、J2EE中间件技术、C语言深入编程、C++/VC++深入编程等课程;专业课程可包含有嵌入式操作系统、Linux设备管理与应用、ARM体系结构与编程、嵌入式系统设计、WinCe系统设计与应用开发、面向操作系统的程序设计、多核程序设计等。对于嵌入式系统实践课程体系可从专业实践与认证培训两个方面进行构建,其中专业实践可从课内实践、课程实训、项目团队、专业竞赛、企业实习、毕业实习等方面进行构建。在专业实践中,课内实践和课程实训是对嵌入式专门知识的巩固与提高,综合实践是阶段性综合能力培养的需求,项目实训与毕业设计是综合分析设计能力的保障。而对于培训认证,可参与ARM公司全球认证、中国软件行业协会嵌入式认证、中国电子学会认证、信息产业部认证等机构和部门的培训认证活动。
  3.2嵌入式系统课程体系分析
  从嵌入式系统课程体系的内容来看,具有三个方面的特点。首先是体系完整,专业特色突出,整个课程体系体现四个方面的能力培养:①编程能力培养,体现在C语言程序设计、C语言深入编程、C++/VC++深入编程及面向操作系统的程序设计等课程。②实践能力培养,体现在嵌入式系统设计与应用开发实践、Linux和WinCE操作系统与应用开发实践、嵌入式系统设计与应用综合实训及毕业实习和毕业设计等方面。③应用能力培养,体现在嵌入式系统设计与应用、嵌入式图形界面开发及嵌入式测试技术等方面。④创新能力培养,主要体现在创新团体、嵌入式竞赛、企业实习及一些嵌入式协会等。其次,整个课程体系具有侧重应用,循序渐进,层层递进的特点。从软硬件编程到专业技能培养,再到项目实训和毕业设计是递进式的。软硬件编程是整个能力培养的基础,专业技能是提高,项目实训和毕业设计是综合应用能力培养。最后,整个课程体系涵盖了微软、信产部认证课程。微软认证为微软WinCE嵌入式系统工程师认证,其课程主要包括WinCE系统设计与应用和嵌入式系统设计。信产部认证为嵌入式系统设计师认证,其主要课程包括嵌入式系统设计、嵌入式测试技术和ARM体系结构与编程。
  
  4计算机专业嵌入式系统实验教学平台的构建
  根据嵌入式系统实践课程体系构建的设想,对于教学实践,要根据计算机专业和嵌入式系统开发的技术要求和岗位职责,可进行合理规划。既要让学生掌握坚实的基础知识,又要让学生跟得上主流技术潮流。由于嵌入式系统在构成上可由硬件和软件构成,因此在进行实验教学时,可从硬件和软件两个方面进行构建。根据目前嵌入式系统开发的主流技术来看,在硬件选型上要以X86CPU、单片机和ARM处理器为主,在操作系统的选择上要以WinCE、Linux、μC/OS-II和Vxworks等操作系统为主,可从驱动程序设计、嵌入式系统界面、应用程序等方面进行实验。本文提出了一种可行的实验架构,如图3所示。
  
  图3嵌入式系统课内实验体系
  图3从三个层面对实验教学进行了规划,最底层为硬件层,可选择不同的处理器及各种外围电路及存储设备进行实验,如X86CPU、ARM处理器、单片机、数模转化电路、I/O接口、通用接口、ROM、RAM等。中间为操作系统层,可选择主流嵌入式操作系统进行实验,如WinCE、Linux、μC/OS-II、Vxworks等。最上层为应用层,可从嵌入式驱动层序开发、嵌入式图形用户界面以及应用程序的设计等方面进行实验,其中在程序设计语言的选择上可重点考虑汇编语言、C/C++语言、JAVA为主要训练语言。
  5总结
  进几年来,市场对嵌入式人才的需求持续走高,但符合企业要求的合格嵌入式从业人员不多,缺口很大。如何缓解人才供需矛盾,是政府和学者们关心的问题。目前就全国高校的普遍情况来看,嵌入式系统还尚未开设本科专业,很多高校只是开设了嵌入式系统方向课程,而且开设的课程五花八门,很难规范。本文从嵌入式系统构成及特点以及嵌入式系统从业人员的职业岗位出发,探讨了嵌入式系统课程体系和实践体系的构建,并针对计算机专业实验教学提出了一种教学结构。通过本文的探讨试图为解决嵌入式课程规范化做出应有贡献,从而加快嵌入式系统开发人员培养,解决市场人才短板而有所作为。
  参考文献:
  [1] 2010-2011中国嵌入式开发从业人员调查报告[EB/OL]http://www.省略/subject/report2010-2011.htm.
  [2]李精华,李兴富.嵌入式技术人才需求分析[J].桂林航天工业高等专科学校学报,2009(3).
  [3]《嵌入式系统行业高技能人才现状和需求、岗位能力及技能要求市场调研》分析报告[EB/OL].http://www.省略/GXJD/HTMLDynamic/JYCGG_3414/201001/info53169.html.

推荐访问:计算机专业 嵌入式系统 高校 实验