以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作..doc_第1頁
以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作..doc_第2頁
以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作..doc_第3頁
以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作..doc_第4頁
以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作..doc_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作家庭保全系統(tǒng)應(yīng)用以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作家庭保全系統(tǒng)應(yīng)用1Design and Implementation of ARMLinux Platform-based Embedded Web System A Home Intruder Alarm System Application蕭榮修*R. S. Hsiao*張國基K. C. Chang史義男Y. N. Shi林 玫May Lin國立臺(tái)北科技大學(xué)電子工程系摘 要嵌入式系統(tǒng) (Embedded Systems) 不但充滿在我們的日常生活中,而且扮演著重要的角色。傳統(tǒng)的嵌入式系統(tǒng)為獨(dú)立作業(yè)平臺(tái)的裝置,不具備網(wǎng)際網(wǎng)路連線及組態(tài)介面 (configuration interface) 的設(shè)定功能,其應(yīng)用範(fàn)圍受到相當(dāng)大的限制。隨著網(wǎng)際網(wǎng)路 (Internet) 應(yīng)用的普及,具有可連上資訊網(wǎng)的 (Web-enabled) 的嵌入式系統(tǒng)之需求日漸殷切。本研究的主要目的即為設(shè)計(jì)一個(gè)可連上資訊網(wǎng)的ARMLinux嵌入式系統(tǒng)平臺(tái),以補(bǔ)足傳統(tǒng)嵌入式平臺(tái)在網(wǎng)路上的不足,並提供系統(tǒng)晶片 (System-on-Chip, SoC) 整合內(nèi)容之參考。藉由此平臺(tái)所提供的網(wǎng)路設(shè)備,我們可以使嵌入式系統(tǒng)裝置連線上網(wǎng),達(dá)到遠(yuǎn)端資訊存取及組態(tài)設(shè)定功能。為驗(yàn)證此嵌入式平臺(tái)之可用性,我們以開放原始碼 (open source) 的方式來實(shí)作一個(gè)低成本高效能家庭保全系統(tǒng)。使用者可在任意計(jì)算平臺(tái)之客戶端 (client-side) 執(zhí)行瀏覽器 (browser) 後,與伺服器 (server) 取得連線,並藉由伺服器端所傳給的Java applet及其socket通訊機(jī)制,設(shè)定家中的保全系統(tǒng)狀態(tài),並由遠(yuǎn)端接收監(jiān)控資訊。透過實(shí)作與效能評(píng)估,我們得到一個(gè)主要的結(jié)論,使用Java來實(shí)作非行動(dòng)式 (固定式) 的嵌入式系統(tǒng)是一種浪費(fèi),因?yàn)樘摂M機(jī)器 (Java Virtual Machine, JVM) 會(huì)消耗很大的計(jì)算與記憶體資源,JVM的跨平臺(tái)特性不具任何意義。關(guān)鍵詞:嵌入式系統(tǒng)、系統(tǒng)晶片。投稿受理時(shí)間: 93年3月15日 審查通過時(shí)間: 93年6月30日56臺(tái)北科技大學(xué)學(xué)報(bào)第三十七之二期ABSTRACTEmbedded systems are omnipresent and play significant roles in our daily lives. In the past, embedded systems have functioned in isolation without any functions of networking and configuration interface. Therefore, the application range is very limited. Since the Internet becomes very popular, the Web-enabled embedded systems will be more expected. The goal of this study is to develop a Web-enabled ARMLinux embedded system development platform to provide the functions of networking and configuration interface and to be used for the consideration of SoC contents integration. To use this facility, which the development platform provides, the embedded device can be connected to the Internet achieving functions of remote information access and configuration setup.To verify the validation of development platform, we adopt open source method to implement a low-cost and high-performance home intruder alarm system. User can run a browser at any computing platform to connect with the server from which the browser receives a Java applet from the server. User uses the Java applet and the socket mechanism to configure and receive the information from the remote home intruder alarm system. Through the implementation and evaluation of performance, we get a conclusion that to use Java for the implementation of the non-mobile embedded system is a waste because the Java Virtual Machine (JVM) consumes a large of computation and memory resources. The cross-platform feature of JVM is meaningless for the non-mobile embedded system.Keywords:Embedded Systems, ARMLinux, Embedded-Web Server, System-on-Chip (SoC).壹、緣由與目的嵌入式計(jì)算系統(tǒng)具有特定的功能及嚴(yán)格的非功能需求:價(jià)格、體積、性能和功率消耗等限制。而SoC技術(shù)可以將複雜的電路整合在一個(gè)矽晶片上,具有輕巧、價(jià)廉、性能佳和低功率消耗等優(yōu)點(diǎn)89。因此以嵌入式處理器為核心,開發(fā)一個(gè)實(shí)用的嵌入式計(jì)算系統(tǒng)原型 (prototype),再以系統(tǒng)晶片技術(shù)製成一顆嵌入式積體電路是目前行動(dòng)裝置、通訊及資訊家電等嵌入式產(chǎn)品最迫切的需求。以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作家庭保全系統(tǒng)應(yīng)用3為預(yù)防與降低家庭竊案的發(fā)生,大部份的家庭會(huì)選擇使用保全服務(wù)。但保全服務(wù)將增加家庭的經(jīng)濟(jì)壓力,而且保全服務(wù)無法深入家中進(jìn)行更細(xì)微的感測,這種只能對(duì)進(jìn)入口 (如窗和門) 進(jìn)行保護(hù)的限制,已經(jīng)不足應(yīng)付家庭保全的需求了。此外,大量的資訊家電進(jìn)入家庭生活中,使用網(wǎng)路做遠(yuǎn)端控制將是必然的趨勢,這點(diǎn)也是一般保全服務(wù)在考慮隱私及服務(wù)能力所難以實(shí)踐的。每個(gè)家庭的環(huán)境不盡相同,應(yīng)有一個(gè)能配合改變的系統(tǒng)組態(tài)方案。組態(tài)方式如能利用網(wǎng)際網(wǎng)路無遠(yuǎn)弗界的特性,進(jìn)行隨時(shí)隨地的調(diào)整並監(jiān)控家庭中的保全系統(tǒng),甚至在行動(dòng)設(shè)備上進(jìn)行監(jiān)控,都將使保全系統(tǒng)更具實(shí)用價(jià)值。綜觀市面上具有類似功能的產(chǎn)品,都以桌上型電腦作為實(shí)作平臺(tái)。固然桌上型電腦的技術(shù)已經(jīng)相當(dāng)成熟,但對(duì)家庭而言,成本依然太高,並有高耗電、體積大等缺點(diǎn)。另一類的產(chǎn)品則搭配軟體的安裝,不必另購一部桌上型電腦,雖然減少了硬體成本,但卻把許多與系統(tǒng)無關(guān)的軟體與保全系統(tǒng)軟體置於同一計(jì)算平臺(tái)之上,造成保全系統(tǒng)的可靠度大為降低。綜合上述,家庭保全系統(tǒng)是一個(gè)專用系統(tǒng),一個(gè)特定系統(tǒng),甚至是一個(gè)容錯(cuò)系統(tǒng),比起一般電腦系統(tǒng)或消費(fèi)性電子產(chǎn)品需要有更多的非功能性需求。嵌入式系統(tǒng)的特性正能符合家庭保全系統(tǒng)的需求。貳、研究方法與成果一、文獻(xiàn)探討由於ARM的低耗電高效能特性,以及Linux的開放原始碼、高移植性 (portability) 等優(yōu)點(diǎn),使用ARM-Linux做為系統(tǒng)平臺(tái)者極為普遍。但是許多系統(tǒng)平臺(tái)並沒有考慮到嵌入式系統(tǒng)的資源限制。成大研究生萬林明12選用的ARM-Linux其kernel及Ramdisk需2.5M位元組 (Byte, 簡稱B) 以上,對(duì)一個(gè)要兼顧成本的嵌入式系統(tǒng)而言,將是一個(gè)沉重的負(fù)擔(dān)。以Web為基礎(chǔ)的嵌入式系統(tǒng)之實(shí)作以美國UCSC Montague等人56所研發(fā)的Javacam最具代表性,其平臺(tái)選擇一個(gè)客製的OSJava Nanokernel(JN),結(jié)合TCP/IP程式等,總共需要45KB的記憶體,而加上Java Virtual Machine (JVM) 共需2MB以上的龐大記憶體。再者,Java的執(zhí)行速度慢,進(jìn)行較為複雜的應(yīng)用,性能將大為降低,同時(shí)Java執(zhí)行所需的時(shí)間較長,功率消耗跟著大為增加。與一般多用途的行動(dòng)式嵌入式系統(tǒng)不同,對(duì)固定式的嵌入式系統(tǒng),為達(dá)到成本及效益的最佳化,系統(tǒng)的軟硬體平臺(tái)在研發(fā)初期就已確定。因此,JVM的跨平臺(tái)特性將不具任何意義。二、系統(tǒng)分析與設(shè)計(jì)(一)作業(yè)系統(tǒng)的選擇我們選用Linux作業(yè)系統(tǒng),主要是因?yàn)長inux能符合我們下列的需求:(1) Linux可以免費(fèi)或以低廉的價(jià)格取得;(2) Linux是以開放原始碼的形式釋出,我們可以調(diào)整Linux以完全符合本應(yīng)用特殊的記憶體及通訊介面需求;(3) Linux支援的硬體元件相當(dāng)多;(4)強(qiáng)健且完善的網(wǎng)路協(xié)定;(5)完整且價(jià)廉的發(fā)展工具7。4臺(tái)北科技大學(xué)學(xué)報(bào)第三十七之二期Linux是一個(gè)符合POSIX標(biāo)準(zhǔn)的核心,應(yīng)用程式都具備平行的移植性。在硬體系統(tǒng)還未建置完成前,先透過符合POSIX標(biāo)準(zhǔn)的桌上型(desktop) Linux進(jìn)行應(yīng)用程式的開發(fā),之後再進(jìn)行核心移植的工作。在此同時(shí),可以尋找符合POSIX標(biāo)準(zhǔn)的程式來加速軟體的開發(fā),以達(dá)到軟體硬體同時(shí)開發(fā)的目的。雖然使用Linux需要付出root file-system約500KB的代價(jià)11,但檔案系統(tǒng)有助於組態(tài)資料的儲(chǔ)存,提高系統(tǒng)存取資料的效率,以方便系統(tǒng)組態(tài)及設(shè)定的實(shí)現(xiàn)7。因此,Linux必須使用檔案系統(tǒng)才能運(yùn)作的特性,反而使得上述的優(yōu)點(diǎn)無需額外的軟體就得以實(shí)現(xiàn),這是其他的嵌入式作業(yè)系統(tǒng)所缺少。減少系統(tǒng)軟體對(duì)記憶體的需求,將有效的降低硬體建置的複雜度與成本,有助於SoC的發(fā)展。為了達(dá)到這個(gè)目的,我們選定了uCLinux作為作業(yè)系統(tǒng)核心,uCLinux對(duì)記憶體的需求,僅需500KB11,並且可以保有所有Linux的通訊能力。(二)處理器的選擇雖然家庭監(jiān)控事務(wù)所需的計(jì)算量不高,但所監(jiān)控的項(xiàng)目卻頗為繁雜。因此,一般8位元單晶片微控制器是無法勝任的,加上系統(tǒng)有可能進(jìn)行一些智慧型的控制,需要一個(gè)32位元單晶片微控器才能達(dá)到較好的效果。此外,家庭監(jiān)控事務(wù)項(xiàng)目繁多,硬體的介面自然相對(duì)增多,過多的額外電路,將在成本優(yōu)勢上大打折扣,所以高度整合週邊電路的32位元SoC是本系統(tǒng)最佳的選擇,硬體平臺(tái)的比較如表(一)。表(一)本系統(tǒng)與其他硬體平臺(tái)的比較平臺(tái)PC-based單晶片微控器本系統(tǒng) (SoC)成本US$30US$1US$4體積較大較小較小耗電2A/5V35mA/5V500mA/5V整合性難以整合難以整合整合度較高 穩(wěn)定性較低較高較高網(wǎng)際網(wǎng)路具備無具備32-bit RISC架構(gòu)的CPU是最能符合體積小、高效能,與低耗電需求的最佳選擇。本系統(tǒng)選擇以ARM作為嵌入式處理器,ARM的核心是以矽智產(chǎn) (Silicon Intellectual Property, SIP) 方式授權(quán)給多家半導(dǎo)體廠商,我們可挑選以ARM為核心且符合系統(tǒng)需求的高度整合系統(tǒng)晶片。此外,ARM的SIP品質(zhì)管控相當(dāng)嚴(yán)謹(jǐn),所以在進(jìn)行核心移植時(shí),遇到的問題會(huì)比較少,使得軟體硬體的開發(fā)工作可以同時(shí)進(jìn)行,不必?fù)?dān)心將來把軟體移植到硬體時(shí),會(huì)有軟硬體不相容的情形發(fā)生3。在這些考量下,ARM是在使用Linux核心下的最好選擇。(三)網(wǎng)路軟體的考量Embedded Web server負(fù)責(zé)儲(chǔ)存網(wǎng)頁,並與client端的瀏覽器交談。選用現(xiàn)有的Web server可節(jié)省大量開發(fā)時(shí)間,並可藉由使用者熟悉的GUI縮短學(xué)習(xí)曲線10。此外,選擇以標(biāo)準(zhǔn)化為存取方法 HTTP和HTML之產(chǎn)品,可排除嵌入式系統(tǒng)裝置及網(wǎng)路的異質(zhì)性2。以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作家庭保全系統(tǒng)應(yīng)用5Java applet在網(wǎng)頁間具有優(yōu)良的互動(dòng)性,且具有跨平臺(tái)、安全性高等優(yōu)點(diǎn)。因此,以Java applet 作為嵌入式系統(tǒng)的組態(tài)介面是極佳的選擇。嵌入式系統(tǒng)平臺(tái)本身不需支援JVM,Java applet可以由Web server透過網(wǎng)際網(wǎng)路傳遞給client端,藉由任意計(jì)算平臺(tái)的瀏覽器即可執(zhí)行。而且,藉由Java applet可建立TCP/IP socket連接,提供client與server間的互動(dòng)機(jī)制。至於控制嵌入式系統(tǒng)平臺(tái)與受控裝置間通訊的程式,則宜選用Linux C/C+語言,以精準(zhǔn)地控制整個(gè)系統(tǒng)、簡省開發(fā)時(shí)間與記憶體的需求並提昇系統(tǒng)性能1。採用了Java applet,使用者只需要安裝Web browser,便可以在任一平臺(tái)上使用家庭監(jiān)控事務(wù)。當(dāng)客戶端連線至伺服器時(shí),Java applet才被下載至客戶端並且執(zhí)行。整個(gè)下載及執(zhí)行的過程,使用者只知道自己開啟了一個(gè)網(wǎng)頁,完全感受不到系統(tǒng)已經(jīng)安裝了能接取伺服器服務(wù)的軟體。配合瀏覽器上的JVM,下載後的軟體將與作業(yè)系統(tǒng)完全隔離,使之能跨越各種軟硬平臺(tái),不受限制的執(zhí)行。安全性的考量下,如圖(一)所示,Java applet只能與伺服器端進(jìn)行連線,其他種類的網(wǎng)路連線將被完全禁止。綜合上述的系統(tǒng)考量,本系統(tǒng)與Javacam之比較如表(二)。圖(一)Java applet在瀏覽器上的安全性表(二)本系統(tǒng)與Javacam之比較平臺(tái)Javacam本系統(tǒng)系統(tǒng)軟體規(guī)模JN, JVM(大約2MB)uCLinux(大約 1MB)效率較低較高記憶體需求較大較小程式語言JavaC/C+, Perl, etc 軟體資源較少較多 (GNU、Linux community)參、系統(tǒng)實(shí)作與成果系統(tǒng)架構(gòu)如圖(二)所示,當(dāng)遠(yuǎn)端的使用者利用瀏覽器登入到本系統(tǒng)時(shí),若輸入的帳號(hào)與密碼正確無誤,Embedded Web Server會(huì)將一個(gè)內(nèi)嵌Java applet的網(wǎng)頁傳回給使用者,瀏覽器執(zhí)行這個(gè)Java applet後,利用socket連線與家庭控制器建立一個(gè)溝通的通道,使用者即可利用Java applet將組態(tài)指令傳給家庭控制器 (Home Controller)。使用者的操作流程,如圖(三)。家庭控制器收到使用者的資料 (命令) 後,便會(huì)遵循與受控裝置通信的協(xié)定,將使用者需求的命令透過UART介面或其他的協(xié)定傳給受控裝置4,如圖(四)。這些受控裝置可能是將來的資訊電冰箱、空調(diào)系統(tǒng)、電話、門窗門禁系統(tǒng)、等資訊家電(IA)。受控裝置接收到家庭控制器的資料(命令)後,進(jìn)行組態(tài)工作,並傳回結(jié)果給家庭控制器,如圖(五)。家庭控制器在收到結(jié)果後,再經(jīng)由socket將資料傳回給Java applet,最後再由Java applet將收到的結(jié)果呈現(xiàn)給使用者,如此完成家庭監(jiān)控的動(dòng)作。系統(tǒng)實(shí)際運(yùn)作情形如圖(六)所示。6臺(tái)北科技大學(xué)學(xué)報(bào)第三十七之二期圖(二)系統(tǒng)架構(gòu)圖(四)家庭控制器運(yùn)作流程Home Devices圖(五)受控裝置反應(yīng)流程以ARMLinux為基礎(chǔ)的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái)之設(shè)計(jì)與實(shí)作家庭保全系統(tǒng)應(yīng)用7(a) 使用者登入畫面(b) 受控裝置組態(tài)畫面圖(六) 本系統(tǒng)實(shí)際運(yùn)作情形肆、結(jié) 論本研究的主要目是要建構(gòu)出一個(gè)可靠度高、成本低,且具可跨平臺(tái)特性的嵌入式資訊網(wǎng)系統(tǒng)平臺(tái),在系統(tǒng)發(fā)展的過程中,我們探討出快速且適合於嵌入式系統(tǒng)的發(fā)展環(huán)境 ARMLinux平臺(tái)。在此發(fā)展環(huán)境中,我們區(qū)分兩種嵌入式系統(tǒng),一種是行動(dòng)式的多用途手持裝置,另一種是非行動(dòng)式的網(wǎng)際網(wǎng)路系統(tǒng)平臺(tái)。兩者的實(shí)作考量是截然不同的,對(duì)一個(gè)不須具備行動(dòng)性的嵌入式系統(tǒng)而言,採用JVM是消耗系統(tǒng)資源且得不到任何優(yōu)點(diǎn)的作法。換句話說,在固定式的平臺(tái)上,應(yīng)該使用該平臺(tái)原本所專屬的語言 (如C/C+)。在我們的系統(tǒng)中,所有軟體都採開放式架構(gòu),兼具功能及成本的彈性,避免落入封閉的軟體架構(gòu)的限制。硬體方面,系統(tǒng)可以選擇的硬體平臺(tái)幾乎是不受限制的,透過Linux的移植,我們自行發(fā)展的軟體無須改寫就可以順利在不同的硬體平臺(tái)繼續(xù)執(zhí)行。綜合上述,我們的系統(tǒng)有以下幾個(gè)特色:1.較小的軟體核心、2.使用上,不需安裝任何軟體、3.友善的使用者介面、4.跨平臺(tái)、5.低成本及豐富的效能、6.高度擴(kuò)充性、7.支援多種硬體及標(biāo)準(zhǔn)、8.開放式的軟硬架構(gòu)、9.方便SoC實(shí)行、10.資訊家電的發(fā)展原型及框架。伍、未來工作本研究雖有初步成果,但若要進(jìn)行需即時(shí)處理的更複雜應(yīng)用,就顯得不足。因此,如何利用real-time OS kernel提出解決方案,是一個(gè)很有價(jià)值的研究方向。另外,如何藉由一個(gè)簡單且不會(huì)造成系統(tǒng)及網(wǎng)路負(fù)擔(dān),又兼具安全性的網(wǎng)路認(rèn)證機(jī)制,也是個(gè)刻不容緩的研究議題。8臺(tái)北科技大學(xué)學(xué)報(bào)第三十七之二期誌 謝本研究承蒙國家科學(xué)委員會(huì)工程處之”晶片系統(tǒng)架構(gòu)及開發(fā)平臺(tái)研究之推動(dòng)計(jì)畫”贊助,計(jì)畫編號(hào): NSC91-2218-E-002-041/010,及本系黃文增副教授提供寶貴的意見,在此一併致謝。參考文獻(xiàn)1Mitchell Bunnell, “Mixing Java and C in Embedded Systems,” Available in the site of: http:/www.omimo.be/magazine/98q1/1998q1_p050.pdf 2Peter Doudley, “Beyond the Embedded Web Server,” Available in the site of: /eiw/98eiw/dudley-v/dudley.html3Steve Furber, ARM System-On-Chip Architecture, 1st Ed., Addison-Wesley, Massachusetts, 2000.4Craig Hollabaugh, Embedded Linux: Hardware, Software, and Interfacing, Pearson Education, Indianapolis, 2002.5Charles E. McDowell, Bruce R. Montague, Michael R. Allen, Elizabeth A. Baldwin, and Marcelo E. Montoreano, “Javacam: Trimming Java down to size,” IEEE Internet Computing, Vol 2, No 3, pp. 53-59, May/June 1998.6Bruce R. Montague, Michael R. Allen, Elizabeth A. Baldwin, Marcelo Montoreano, and Charles E

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論