1 / 31

Fundamentals of Embedded System

Fundamentals of Embedded System. 陳家裕 chiayu@nmi.iii.org.tw. Professional Specialty. Smart phone Linux and WinCE platform Application and Lib Instant Message VOIP-Session Initiation Protocol (SIP) Embedded Linux 遠端心電圖系統. 嵌入式系統範疇.

naomi
Download Presentation

Fundamentals of Embedded System

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fundamentals of Embedded System 陳家裕 chiayu@nmi.iii.org.tw

  2. Professional Specialty • Smart phone • Linux and WinCE platform • Application and Lib • Instant Message • VOIP-Session Initiation Protocol (SIP) • Embedded Linux • 遠端心電圖系統

  3. 嵌入式系統範疇 • 硬體的晶片設計、電路與周邊設計,到軟體、韌體、系統整合,以及各式各樣的應用程式與服務提供,都是整個嵌入式系統領域包含的範疇 • 嵌入式系統概論(3) • 微電腦硬體結構(中央處理單元、記憶體單元、輸入單元與輸出單元 ) • ARM處理器(3) • DSP(3) • 作業系統(3+3….) • 計算機組織與結構(3+3….) • 網路概論(3+3…)

  4. 課程內容 • 嵌入式系統概論(1-2章) • 微處理器/匯流排架構/軟硬體介面(4,6章) • I/O與周邊裝置(5章) • 嵌入式作業系統/RTOS(7章) • 系統開發(8章)

  5. 電腦系統的五大單元 控制部門 輸入部門 記憶部門 輸出部門 資料 資料 鍵盤 滑鼠 螢幕 印表機 算數與邏輯部門 資料流程 控制流程

  6. Embedding a computer output analog Ring! Ring! Ring! input CPU analog mem 數字鍵盤 embedded computer

  7. 嵌入式系統定義 • 英國電機工程師協會定義:嵌入式系統為控制、監視或輔助某個設備、機器或甚至工廠運作的裝置 • 用來執行特定功能 • 以微電腦與周邊構成核心 • 嚴格的時序與穩定度要求在機器控制上,稍有不慎則可能失去控制,釀成災害。 • 全自動操作循環斷電時的緊急處理,使復電後仍能回復原有的狀態。

  8. 嵌入式系統產業 • 系統:嵌入式作業系統(RTOS) • VxWORKs、Nucleus 、Palm、Windows CE、Linux • 整合式晶片:SoC • ARM、MIPS、Rambus、Mentor、Synopsys、Insilicon、DSP Group、VirageLogic、Artisan以及Parthus • 應用軟體 • 使用者端的應用軟體及伺服器端的整合軟體 • 服務 • 日本NTT DoCoMo所發展的iMode服務 • 3G • WEB 2.0

  9. About your work • 應用程式 • Lib • 整合,測試 • porting • 軟硬體整合 • Boot Loader • OS porting • driver • 電路與周邊 • 系統工程師 • 視需求整合,設計電路週邊 • 硬體的晶片設計 • 硬體工程師(IC Design SOC設計)

  10. Software Engineer Skill • C/C++ • Java(J2ME,J2SE,J2EE) • Linux (OS,Program,Application) • WINCE (.NET) • Platform • Socket • Thread • Porting

  11. 設計嵌入式系統 • 設計者必須依據不同領域來決定要元件 • 微處理機 • 硬體平台 • 周邊I/O裝置 • 軟體 • 同時能夠縮小體積與提升處理效率 • 省製造成本 • 省電 • 速度滿足需求

  12. 嵌入式系統的設計重點 • Real-time performance • hard real-time: if deadline missed system has failed (car brakes!) • soft real-time: missing deadline degrades performance (skipping frames on DVD playback) • Real-world I/O performance • sensor and actuators require continuous I/O (can’t batch process) • Cost • hardware/Softwarestructures, particularly memory • static code size very important (cost of ROM/RAM) • often ship millions of copies (worth engineer time to optimize cost down) • Power • expensive package and cooling affects cost, system size, weight

  13. 嵌入式系統的設計考量 • 應該有哪些功能 ? • 與現有及未來產品比較? • 選用的演算法? • 使用者介面? • 系統的生命期限是多少 ? • 升級考量 ? • 穩定性? • 製造成本? • 省電考量?

  14. MP3 Player Design • Goal • 音樂不能間斷,有一定程度的時序要求 • Functions • MP3壓縮/解壓縮技術 • MP3資料儲存及讀取 • 音樂撥放與錄音 • 使用者介面。

  15. Solutions • 以現有的MP3壓縮/解壓縮晶片為主軸設計。 • 此時所設計的微電腦,大部分的時間在作資料儲存及搬運的動作,目的在〝服侍〞該MP3晶片及收集使用者命令。雖有即時性需求。但來得及就夠,微電腦本身無須複雜。 • 以韌體及應用程式實作(微處理器/單晶片)。 • MP3韌體實現的差異。 • 程式最佳化 • 浮點數計算 • 其它方式或演算法簡化計算流程。 • 是否使用即時多工核心。 • 各項工作間有一定程度的時序與優先權關係。 • 多工核心的目的,是將CPU資源的分配,與實際工作內容分開,並利用核心將韌體模組化,便於維護及管理。 • 是否朝SOC ( System On Chip ) 的方向發展

  16. 網際網路能力的嵌入式系統 • 稱為Internet-enabled embedded system或Internet appliances • 網際網路提供標準的通訊方式,讓每一個具有網路位址(IP address)的系統,可以彼此溝通 • 延遲問題的重要性 • Real time? or not • 儲存空間 • 必須取捨一些不需要的網際網路服務,以縮小佔用的空間 • 個人數位助理(PDA)、雷射印表機或是傳真機

  17. Smart Phone-智慧型行動電話 • 兼具處理資料與聲音的手機。 • 行動電話 • 無線數據 • 與電腦通訊的功能(Active Sync) • 基本文書處理 • PDA • …More • 有此一說 • PDA Phone 與Smart Phone 最大的差別是螢幕能不能觸控!

  18. Linux for Embedded System • 開放原始碼、模組化設計 • 易於客製化可以調校出最適合我們硬體平台的核心。 • 核心程式精簡 • 穩定性夠 • 嵌入式Linux 具備且不必支付高額權利金 • 網路功能強大 Linux 的架構是修改 UNIX 系統,因此 也承襲了 UNIX 強大的網路功能。 • 通常我們都會先在 PC 端模擬嵌入式的環境,並直接在上頭開發,因此用的工具也都與開發一般 Desktop 軟體類似,良好的工具能夠增加開發的速度。

  19. Java(J2ME,J2SE,J2EE)

  20. J2ME

  21. Google Map及時路況 • 只要擁有一隻支援J2ME規格的手機,便可以下載Google Map相關的軟體,讓你在手機上便能立即看到附近的即時路況。

  22. Windows CE 6 • 微軟(2006/6/20)推出新版嵌入式作業系統Windows CE 6 beta,相較於上一版本 • 大幅增加系統執行程序數從原來的32個提高至32000個程序數。 • 並整合開發工具至Visual Studio 2005 • 1996年發佈的Windows CE 1.0至目前CE已推出十週年 • 支援多種CPU,擁有良好的通信能力 • 多工作業系統,即時作業系統

  23. Boot Loader • 所謂開機引導程式(Boot Loader)就是當嵌入式系統硬體開機或是重設(Reset)之後所要執行的第一段軟體的程式碼。 • 相對應於我們日常生活最常接觸的個人電腦,嵌入式系統Boot Loader的部份就是由BIOS和硬碟的主要開機磁區中的OS Loader(例如:LILO或是GRUB)所組成

  24. SoC-System on Chip • 晶片系統(System-on-chip;SoC),或稱系統單晶片。 • SoC即是將一個終端產品(或稱系統)的主要功能整合進單一晶片,因此可被視為足以包含一個完整功能的系統。 • 嵌入式運算引擎:可能是微處理器(MPU)、數位訊號處理器(DSP)、圖形處理器,為SoC資料處理及運算之核心。 • 嵌入式記憶體(Embedded Memory):可能是隨機存取記憶體(RAM)、唯讀記憶體(ROM)或是快閃記憶體(Flash)等。 • 控制邏輯電路(Control Logic Circuit)。 • 匯流排介面(Bus Interface):提供與外部記憶體及實體世界之聯繫溝通管道,如PCI匯流排、AGP繪圖匯流排、USB、IEEE1394等。 • 嵌入式軟體(Embedded Software):作為系統控制與功能設定之用,如RTOS、Middleware、Firmware等。

  25. SoC嵌入式系統微處理器的好處 • 主要的優點在於縮小晶片的體積以及降低成本 • 利用改變內部工作電壓,降低晶片消耗功率。 • 利用減少晶片對外接腳數,簡化製造過程。 • 利用減少週邊驅動介面單元,及電路板之間的訊號傳遞,可加快微處理器資料處理的速度。 • 利用內嵌的線路以避免外部電路板在訊號傳遞時所造成系統雜訊。

  26. SoC之架構 • 另一種比較嚴格的SoC定義 • 採用先進的製程技術(0.25um以下)。 • 必須能夠支援不同的工作電壓,使內部各類元件電路都能夠運作。 • 嵌入式記憶體容量1MB以上。 • 必須使用Reusable IP。 • 具備可規格化(Configurability)或是可程式化(Programmability)之功能。 • 具備實體世界介面(Real World Interface)。

  27. Silicon Intellectual Property(SIP,IP) • Design Reuse是縮短SoC開發時程的有效方式,而具體的做法就是使用矽智財(Silicon Intellectual Property; SIP,簡稱IP • 矽智財是一種事先定義、驗證、可以重複使用的功能組塊。 • 若將IC想像為最終希望的圖像,那矽智財就是組合過程中各種造型的積木。 • IC設計業者可以運用功能元件資料庫中的IP,做適當組合而成為一顆IC,以加快IC設計的速度,搶產品上市的時機。 • ARM is a kind of IP • http://nsoc.eic.nctu.edu.tw/chinese.asp

  28. WEB 2.0 • 強調使用者參予行為 • Google • mp3.com  Napster • content management systems  wikis • Ofoto  Flickr • 諾基亞與全球最大線上相片分享社群公司 Flickr 宣布合作,N系列行動裝置使用者不需下載或安裝任何應用軟體,即可將相片和說明文字上傳到 Flickr 線上帳戶,並可使用編輯、排列、標示和分享等功能。 • Nokia N93、Nokia N73 和 Nokia N72。

More Related