摘要:隨著計算機技術的發展,嵌入式系統得到越來越廣泛的應用,CC2004已經把嵌入式系統作為計算機工程專業的核心課程。本文分析目前國內對嵌入式系統人才的需求和高校培養嵌入式系統人才的現狀,針對計算機專業嵌入式系統方向的課程體系提出一套建設方案。
關鍵詞:計算機專業;嵌入式系統;課程體系;
作者簡介:蔣偉杰,男,講師,研究方向為嵌入式系統。
1概述
1.1嵌入式系統定義及構成
我國對嵌入式系統的定義是:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,在實際應用中對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統。它一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統以及應用程序等四個部分組成,具有對其他設備進行監視、控制或管理等功能。
1.2嵌入式產業現狀
嵌入式系統產品廣泛應用于移動通訊、電子消費品、醫療設備、軍工航太等領域。目前我國的手機、互聯網、有線電視用戶數量均居全球第一,我國的嵌入式系統產業在其市場的促進下突飛猛進。根據賽迪顧問的研究顯示,2007年中國嵌入式系統產業規模達到2 218.1億元,增長32.3%。2005年到2007年的復合增長率達到23.1%,增長速度持續高出同期全球嵌入式系統產業的平均增速。另外,據全球著名市場調查公司GFK預測,2009年全球消費電子產品市場銷售額將達到6 822億美元,其中中國的市場將占全球市場的14.5%[1]。IBM、Sybase、Oracle、Intel以及Microsoft等國際公司也紛紛在中國成立專門的嵌入式部門,進軍中國的嵌入式市場。
1.3嵌入式人才需求
在嵌入式系統產業高速發展的刺激下,相關企業
對嵌入式系統人才的需求與日俱增。在我國較大的兩家招聘網站“前程無憂”和“智聯招聘”上對嵌入式系統人才的職位需求進行調查,2010年3月20日對嵌入式相關職位的需求分別是6 371個和5 083個[2],2011年1月2日的需求分別是9 760個和8 146個。不到10個月,其需求的增長分別達到53.2%和60.3%。
近幾年,每年都有大量的人才進入嵌入式系統領域。嵌入式系統人才培訓機構華清遠見在《2009-2010年中國嵌入式開發從業人員調查報告》中指出從事嵌入式開發不到2年的工程師所占的比例是最大的,占總參與調研人數的60%。同時,該報告顯示,在接受調查的嵌入式工程師中有80%認為自己公司目前都急缺嵌入式開發方面的人才。
1.4嵌入式高校教育現狀
國內大部分高校計算機相關專業和電子通信相關專業只是將嵌入式系統的有關課程作為選修課來開設,并未作為一個專業方向來設置,嵌入式系統課程沒有形成體系,因此在嵌入式系統人才的培養上還普遍存在著幾個問題。
1.4.1嵌入式系統知識學科融合性強,不同專業的學生各有其局限性
嵌入式系統需要掌握模擬電路、數字電路、EDA設計、微機原理及接口、程序設計、操作系統、軟件工程等綜合知識。而各專業學生的學科知識參差不齊,自動化、測控和電子類的學生電子設計的基礎較好,程序設計偏弱;而計算機類的學生程序設計基礎好,電子設計能力偏弱[3]。
1.4.2嵌入式課程知識與實際需求脫節
嵌入式系統知識體系最主要的三大技術是計算機體系結構、計算機操作系統和計算機網絡,國內高校這些課程的教學內容老化,不能跟上最新技術的發展[4]。像計算機體系結構的課程大多還停留在8位處理器的層次上,而目前在市場上占主導地位的是32位處理器,畢業生所學的知識與企業需求脫節,導致嵌入式系統人才的缺乏,也制約著高校嵌入式系統課程的發展。
1.4.3師資不足,實驗設備匱乏
嵌入式系統課程的教學與傳統的教學模式相比,更加注重學生的實際開發能力,在教學過程中一般要求以項目為導向、以開發平臺為核心,這不僅要求教育模式和教育方法上的改革,還需要建設相應的實驗平臺。
一般院校在嵌入式系統方向的師資有限,特別是軟硬件知識兼通的師資嚴重不足,熟悉應用程式開發和操作系統的教師對底層的處理器和驅動了解不夠,而熟悉底層硬件的教師卻對軟件開發比較陌生[5]。另一方面,嵌入式開發需要很強的實踐能力,授課的教師需要具有很深的專業背景和工程項目經驗[6]才能引導學生進行自學,才能夠給出多個項目,讓項目貫穿整個教學過程,充分發揮學生的主體作用。
嵌入式系統的學習需要建立在大量的實踐基礎上,而嵌入式系統的開發板、仿真工具等實驗設備價格較高,一般院校的實驗設備數量有限,這也在相當程度上限制了學生的實踐時間和空間[3]。
2嵌入式課程體系的建立
2.1嵌入式人才培養目標
嵌入式系統的應用可以分為三個層面[7],從低到高分別是SOC系統設計及開發,嵌入式操作系統的移植、裁剪、驅動開發和平臺的設計,嵌入式的應用程序開發。
中國嵌入式系統產業聯盟、中華嵌入式人才庫在2008年發布的《首次嵌入式企業人才需求報告》中顯示企業對應屆畢業生的需求如圖1、圖2所示。
圖1企業崗位需求
圖2企業培訓需求
圖1代表著現在企業需求的現狀。從圖1數據可以看出,目前企業招收畢業生最多的崗位是與Linux相關的開發工程師以及軟件測試師等,而其余的主要是ARM開發工程師與單片機開發工程師,這說明目前企業最需要的是嵌入式應用程序開發這一層面的人才。
圖2代表著企業未來的人才需求方向。圖2的數據表明企業最希望畢業生接受的培訓是嵌入式培訓,接下來是ARM、DSP等與嵌入式處理器的培訓,其余的主要是FPGA及WindowCE的培訓,這說明未來企業最希望接收的人才是具有嵌入式系統多個層面基礎知識的通用人才,能夠具有軟硬件協同開發的能力。而企業對ARM和DSP嵌入式處理器人才及FPGA設計人才的期望則說明了兩個可能性,其一是企業對人才的需求向嵌入式系統的底層技術偏移,其
二是企業希望將來的應用程序開發人員具有嵌入式系統硬件基礎,了解嵌入式系統的硬件構成,更好為嵌入式軟件開發服務。
因此,建立嵌入式課程體系的目標是培養具有嵌入式系統基礎知識,即嵌入式應用開發、嵌入式操作系統開發、嵌入式SOC設計三個不同層面都有一定基礎的人才,同時在這個基礎之上重點培養嵌入式應用開發。
2.2嵌入式課程體系的建設
要達到培養嵌入式人才的目標,可以根據三個不同層面來分析其知識構成及其相關的課程,并根據目前的主流技術及其發展趨勢,具體制定課程的主要內容。
從嵌入式SOC設計的層面來看,需要的課程有EDA設計、嵌入式處理器及其接口、SOC設計等。嵌入式的處理器體系可以選擇目前應用最廣泛的ARM體系結構和DSP處理器結構;嵌入式接口技術方面可以選擇用戶圖形界面、無線通訊等接口模塊;而SOC設計方面可以學習Altera公司的基于NiosII的SOPC設計。
從嵌入式的操作系統開發的層面來看,需要的課程有嵌入式操作系統以及嵌入式驅動程序開發等。嵌入式操作系統的學習以嵌入式Linux操作系統、WinCE操作系統、嵌入式Android操作系統等為主。
從嵌入式應用程序開發的層面來看,需要的課程有嵌入式網絡技術、嵌入式數據庫、嵌入式軟件設計等。根據操作系統的教學情況,應著重培養在Linux、WinCE、Android等系統平臺上進行嵌入式應用程序開發的能力。
根據目前一般院校的情況,新設置一個嵌入式專業來培養嵌入式人才,在短期內顯得不切實際,因此最好的方式就是對原有的計算機相關專業進行改革,在原有的專業基礎上增加嵌入式系統方向,具體的做法如下。
專業基礎課的調整:在“組成原理”課程中增加ARM體系和DSP處理器的內容,壓縮原有的X86架構的內容[7];在“微機原理和接口”課程中選擇以ARM體系及其接口為主的課程內容[8]。調整后的課程如下:計算機導論、C程序設計、基礎電路與電子學、離散數學、數字電路、算法與數據結構、組成原理、操作系統、計算機網絡與通信、微機原理與接口、數據庫、面向對象。嵌入式系統方向的專業課程設置如下:EDA設計技術、嵌入式系統SOPC設計、嵌入式Linux操作系統、嵌入式系統設計。專業選修課中增加兩門課程:嵌入式網絡技術、嵌入式數據庫技術。
調整后前5個學期學習專業基礎課,第6個學期開始分方向進行學習。前5個學期的專業課程安排如表1所示。
表1專業課程安排表
3建設嵌入式課程體系的實施
3.1師資培養
除了直接引進嵌入式系統的師資以外,還可以選擇加強原有師資力量,培養原來與嵌入式系統相關方向課程的教師,特別是年輕的教師。培養的途徑有:讓教師參加嵌入式課程培訓,了解嵌入式課程體系,掌握最新的嵌入式系統發展趨勢,明確教師在嵌入式課程體系中擔任的角色;計算機專業與電子專業的教師跨專業合作,利用自身的專業優勢取長補短,共同進行嵌入式系統課題的研究;在有條件的情況下,可以參與或申報嵌入式相關的科研項目,以及與企業進行合作,開展類似項目,進一步將理論與實際需求相結合。
由于嵌入式系統的課程學習具有很強的實踐性、且與現實生活中的技術發展結合緊密。因此在部分課程的教學過程中,可以考慮建立業師制度,即由企業的嵌入式開發工程師承擔課程的部分授課任務。業師可參考三個來源:嵌入式人才較多、需求較大的企業;嵌入式開發板、嵌入式設備廠商;嵌入式系統的培訓機構。
3.2實驗平臺建設
根據嵌入式系統課程的設置,需要的實驗平臺要有兩種類型:一是CPLD/FPGA設計平臺,與SOPC課程設計配套。二是基于ARM體系的實驗平臺,可以進行嵌入式操作系統和嵌入式應用開發的實際課程。
目前市場上相關的嵌入式實驗平臺有很多,根據制定的培養目標,選擇實驗平臺時要滿足以下要求:有足夠的輸入輸出接口,以及多種常用的接口,能夠完成大多數嵌入式系統基礎知識的實驗。如輸入需要有指撥開關、按鍵開關、可調頻率的脈沖輸入、鍵盤輸入等,另外根據需求可以選擇有觸摸屏的輸入。輸出的接口需要含有(雙色)LED燈、七段代碼顯示器、點陣、液晶屏顯示器等。其他通信的接口如USB串口、RS-232 串行口、以太網接口、WIFI無線接口、VGA接口等。另外,還要求該實驗設備能夠支持一定的設計開發,可以進行綜合設計,創新課題或者是畢業設計的課題。
3.3教學模式改革
由于嵌入式系統的學習具有很強的實踐性,在進行嵌入式課程的教學過程中結合傳統的教學方式,主
要采用以項目為導向的教學方式。整個教學過程可以分成兩條主線,第一條主線是理論基礎及其實踐基本技能訓練,采用傳統的教學方式;第二條主線以引導學生的積極性、開發學生的創新能力為主,在課程中給出多個項目,學生選擇感興趣的項目,在學習理論知識的同時自行分析、設計并完成。
4結語
嵌入式技術已成為當今后PC時代的主流應用,在中國嵌入式產業高速發展的情況下,如何在傳統的計算機專業中注入嵌入式系統內涵,培養合格的、適應社會需求的嵌入式人才是現在高校計算機學科競相研究的一個課題。我們正是針對嵌入式系統人才需求的實際情況,提出在培養嵌入式系統人才的過程中既要注重計算機學科的理論基礎也要加強培養學生的實踐能力。理論基礎的知識要與時俱進,跟上科技發展的主流;實踐課程的設置上要以具體的實驗平臺為依托,以企業的需求為目的,培養出來的嵌入式系統人才在社會上才能夠占有一席之地。
參考文獻:
[1] 許曄. 發展嵌入式系統是我國后PC時代的戰略選擇[J]. 中國科