出版時間:2010-6 出版社:清華大學 作者:符意德 頁數(shù):292 字數(shù):439000
前言
嵌入式系統(tǒng)已廣泛應用到信息家電、移動通信設備、醫(yī)療儀器和汽車電子等眾多領域,作為一種新的計算平臺,越來越受到人們的重視。傳統(tǒng)的嵌入式系統(tǒng)起源于20世紀70年代初,至今已有很長時間了。隨著時代的進步、技術的發(fā)展,人們對嵌入式系統(tǒng)的功能要求越來越高,傳統(tǒng)的嵌入式系統(tǒng)程序設計方法已不能滿足快速、高效地設計復雜嵌入式系統(tǒng)的要求。因此,開設嵌入式系統(tǒng)原理及設計方法的相關課程,培養(yǎng)計算機科學與技術、通信工程、電子工程等相關專業(yè)的本科生及研究生,使其能全面地了解并熟練掌握復雜嵌入式系統(tǒng)的設計方法是十分必要的。基于32位嵌入式微處理器的系統(tǒng),其硬件構件較復雜,用戶應用軟件的復雜度也成倍增長。因此,要完整地學習嵌入式系統(tǒng)的設計知識,需要學習多門課程。嵌入式系統(tǒng)涉及的知識點非常多,因此對于初學者來說,如何結合自己的目標,找準學習嵌入式系統(tǒng)設計知識的切入點是非常必要的。狹義地說,學習嵌入式系統(tǒng)設計知識可以從兩個不同的層面切入:第一層面,針對將來只是應用嵌入式系統(tǒng)硬件、軟件平臺進行二次開發(fā)的學生而言,應側重學習基于某個嵌入式系統(tǒng)平臺(包括硬件平臺和軟件平臺)進行應用系統(tǒng)設計和開發(fā)的能力,即主要是學習在某個嵌入式操作系統(tǒng)(如嵌入式Linux)環(huán)境下應用程序的編寫、調(diào)試,學習其API函數(shù)的使用,學習I/O接口部件的驅(qū)動程序編寫等;第二層面,針對將來從事嵌入式系統(tǒng)平臺設計,或者需要結合應用環(huán)境設計專用硬件平臺的學生而言,需重點學習嵌入式系統(tǒng)體系結構及接口設計原理,即主要學習某個具有代表性的嵌入式CPU(如ARM系列)內(nèi)部寄存器結構、匯編指令系統(tǒng)、中斷(異常)管理機制及常用的外圍接口,同時要學習無操作系統(tǒng)下的編程技術。進一步還需要學習啟動程序的編寫和操作系統(tǒng)移植等方面的知識。
內(nèi)容概要
本書從嵌入式系統(tǒng)設計及平臺構建角度,全面地介紹嵌入式系統(tǒng)的軟硬件平臺設計方法。書中以基于ARM9微處理器核的S3C2410芯片為背景,首先介紹嵌入式系統(tǒng)硬件平臺設計技術即接口技術,然后介紹軟件平臺的構建方法以及網(wǎng)絡接口的設計方法,最后從方法學角度介紹復雜嵌入式系統(tǒng)的設計方法。書中講述具體的嵌入式微處理器的目的是使其原理概念具體化,從而避免抽象、深奧。本書從具體的案例中歸納出了具有普遍指導意義的嵌入式系統(tǒng)設計原理和方法,所討論的原理及概念并不僅僅對S3C2410微處理器有用,而且適用于多種不同的微處理器。
本書內(nèi)容豐富,圖文并茂,講解深入淺出,適合作為計算機科學與技術、電子工程、通信工程等專業(yè)的高年級本科生或碩士研究生相關課程的教材。
書籍目錄
第1章 緒論
1.1 什么叫嵌入式系統(tǒng)
1.2 嵌入式系統(tǒng)的特點
1.2.1 嵌入式系統(tǒng)的要求
1.2.2 嵌入式系統(tǒng)的核心
1.2.3 嵌入式系統(tǒng)設計所面臨的問題
1.3 嵌入式系統(tǒng)的設計過程
1.3.1 需求分析與規(guī)格說明
1.3.2 體系結構設計
1.3.3 構件設計
1.3.4 系統(tǒng)集成
第2章 嵌入式微處理器體系結構
2.1 ARM9簡介
2.1.1 ARM9的結構特點
2.1.2 ARM9指令集特點
2.1.3 ARM9的工作模式
2.2 ARM9的存儲組織結構
2.2.1 大端存儲和小端存儲
2.2.2 I/O接口的訪問方式
2.2.3 內(nèi)部寄存器
2.3 ARM9的異常
2.3.1 類型及向量地址
2.3.2 優(yōu)先級
2.3.3 進入異常和退出異常
2.4 ARM9匯編指令
2.4.1 尋址方式
2.4.2 寄存器裝載及存儲指令
2.4.3 算術和邏輯指令
2.4.4 比較指令
2.4.5 分支指令
2.4.6 軟件中斷指令
第3章 嵌入式系統(tǒng)的存儲系統(tǒng)
3.1 存儲器組織及接口方式
3.1.1 隨機存儲器組織
3.1.2 只讀存儲器組織
3.2 存儲器接口設計
3.2.1 SRAM的接口設計
3.2.2 DRAM的接口設計
3.2.3 NAND Flash的接口設計
3.3 高速緩存機制
3.3.1 高速緩存機制原理
3.3.2 數(shù)據(jù)替換策略
3.3.3 數(shù)據(jù)一致性
3.3.4 高速緩存性能分析
3.4 虛擬存儲機制
3.4.1 虛擬內(nèi)存技術原理
3.4.2 一個具體實例
第4章 嵌入式系統(tǒng)的接口設計
4.1 接口控制方式
4.1.1 程序查詢方式
4.1.2 中斷方式
4.1.3 I/O接口的尋址
4.2 通用并行I/O接口
4.2.1 GPIO的一般性原理
4.2.2 一個具體的GPIO
4.2.3 GPIO設計實例
4.3 定時/計數(shù)器部件
4.3.1 定時/計數(shù)器的原理
4.3.2 一個具體的定時器
4.3.3 定時器的設計實例
4.3.4 看門狗電路
4.4 人機接口
4.4.1 鍵盤接口設計
4.4.2 LED顯示器接口設計
4.4.3 LCD顯示器接口設計
第5章 嵌入式系統(tǒng)軟件平臺
5.1 嵌入式系統(tǒng)軟件概述
5.1.1 嵌入式軟件平臺的發(fā)展
5.1.2 嵌入式軟件開發(fā)特點
5.1.3 嵌入式Linux
5.2 嵌入式操作系統(tǒng)移植
5.2.1 啟動引導程序的移植
5.2.2 Linux內(nèi)核移植
5.3 文件系統(tǒng)移植
5.3.1 Linux文件系統(tǒng)結構及類型
5.3.2 Linux文件系統(tǒng)的原理
5.3.3 Linux文件系統(tǒng)的創(chuàng)建
5.4 設備驅(qū)動
5.4.1 設備管理機制
5.4.2 設備驅(qū)動原理
5.4.3 驅(qū)動程序開發(fā)實例
5.5 其他嵌入式操作系統(tǒng)
5.5.1 μC/OS-II
5.5.2 VxWorks
第6章 嵌入式網(wǎng)絡技術
6.1 分布式嵌入式系統(tǒng)結構
6.1.1 網(wǎng)絡結構
6.1.2 通信方式
6.2 常規(guī)嵌入式系統(tǒng)網(wǎng)絡
6.2.1 異步串行通信網(wǎng)絡
6.2.2 I2C總線
6.2.3 CAN總線
6.3 USB網(wǎng)絡
6.3.1 USB的概念及特點
6.3.2 USB總線體系結構
6.3.3 USB主機
6.3.4 USB設備
6.3.5 實例--S3C2410的USB接口部件
6.4 嵌入式TCP/IP網(wǎng)絡
6.4.1 嵌入式TCP/IP協(xié)議實現(xiàn)的特點
6.4.2 以太網(wǎng)及TCP/IP協(xié)議
6.4.3 嵌入式TCP/IP實現(xiàn)
6.5 基于網(wǎng)絡設計的性能分析
6.5.1 通信分析
6.5.2 系統(tǒng)性能分析
6.5.3 網(wǎng)絡分配和調(diào)度
第7章 嵌入式系統(tǒng)設計和分析
7.1 系統(tǒng)設計的形式化方法
7.1.1 統(tǒng)一建模語言
7.1.2 結構描述
7.1.3 行為描述
7.2 嵌入式系統(tǒng)設計范型
7.2.1 狀態(tài)機設計范型
7.2.2 循環(huán)隊列設計范型
7.3 編程模型
7.3.1 數(shù)據(jù)流圖
7.3.2 控制/數(shù)據(jù)流圖
7.4 程序執(zhí)行時間的分析與優(yōu)化
7.4.1 執(zhí)行時間的描述
7.4.2 性能分析
7.4.3 優(yōu)化執(zhí)行速度
7.5 能量和功率的分析與優(yōu)化
7.5.1 程序功耗分析
7.5.2 功耗優(yōu)化
7.6 程序長度的分析與優(yōu)化
7.6.1 數(shù)據(jù)的影響
7.6.2 代碼的影響
第8章 系統(tǒng)設計實例
8.1 實例一: 數(shù)字式時鐘
8.1.1 系統(tǒng)需求
8.1.2 規(guī)格說明
8.1.3 系統(tǒng)體系結構
8.1.4 構件設計與測試
8.2 實例二: 醫(yī)用心電儀
8.2.1 系統(tǒng)需求
8.2.2 需求分析
8.2.3 靜態(tài)結構模型
8.2.4 動態(tài)行為模型
8.2.5 物理模型
8.2.6 小結
8.3 實例三: 嵌入式Web服務器
8.3.1 嵌入式Web服務器結構
8.3.2 嵌入式Web服務器的設計
8.3.3 基于嵌入式Web的應用結構
8.3.4 基于嵌入式Web的應用程序設計
8.3.5 小結
附錄A UML元素、關系、符號
參考文獻
章節(jié)摘錄
插圖:因此,可以說數(shù)字系統(tǒng)中不使用微處理器是沒有多少優(yōu)勢的,微處理器的優(yōu)點使它在許多數(shù)字系統(tǒng)領域內(nèi)成為首選。微處理器的可編程能力在嵌入式系統(tǒng)開發(fā)過程中是最寶貴的,它使程序設計可以與硬件系統(tǒng)的設計分開進行,當一組人員在設計包含微處理器、存儲器和輸入輸出設備等的電路板時,另一組人員可以同時編寫程序。同樣重要的是,可編程能力使廠商可以很容易地使自己的產(chǎn)品系列化,在許多情況下,高端產(chǎn)品設計可以在不改變原來硬件的情況下,僅僅通過升級軟件來實現(xiàn),這樣可以降低生產(chǎn)成本。即使當硬件必須重新設計時,原有的一些軟件也可重用,從而大大節(jié)約了時間和開銷。1.2.3 嵌入式系統(tǒng)設計所面臨的問題外部約束是嵌入式系統(tǒng)設計遇到困難的一個重要來源。下面列出了嵌入式系統(tǒng)設計過程中所面臨的一些主要問題:(1)需要多少硬件。在設計嵌入式系統(tǒng)時不僅需要考慮選擇何種CPU,同樣需要考慮存儲器容量I/O設備及其他外圍電路。在滿足系統(tǒng)性能要求的前提下,滿足系統(tǒng)經(jīng)濟性要求。即系統(tǒng)硬件太少,將不能達到性能要求;系統(tǒng)硬件太多,又會使產(chǎn)品變得過于昂貴,并降低了可靠性。(2)如何滿足實時性。用提高CPU速度的方法使程序運行的速度加快從而解決實時性問題的方法是不可取的,因為這會使系統(tǒng)的價格上升;同時,僅僅提高CPU的時鐘頻率有時并不能提高程序執(zhí)行速度,因為程序執(zhí)行速度還會受存儲器速度的限制。因此,應精確設計程序以滿足實時性要求。(3)如何減少系統(tǒng)的功耗。對于電池供電的嵌入式系統(tǒng)而言,功耗是一個十分重要的問題。對于非電池供電的嵌入式系統(tǒng)而言,高功耗會帶來高散熱量。降低嵌入式系統(tǒng)功耗的一種方法就是降低它的運算速度。但是單純地降低運算速度會導致實時性能不能滿足,應認真設計,以便通過降低系統(tǒng)非關鍵部分的速度來降低系統(tǒng)功耗,而同時又能滿足系統(tǒng)的實時性能。(4)如何保證系統(tǒng)可升級。系統(tǒng)的硬件平臺可能使用幾代,或者使用在同一代的不同級別的產(chǎn)品中,而這些僅僅只應做一些簡單的改變。因此,希望通過修改軟件來改變系統(tǒng)的功能。如何才能設計一種硬件平臺,使它能夠提供未來程序需要的功能呢?(5)系統(tǒng)調(diào)試復雜。調(diào)試嵌人式系統(tǒng)比調(diào)試通用臺式計算機上的程序困難得多。通常需要運行整臺設備以產(chǎn)生測試數(shù)據(jù),而數(shù)據(jù)產(chǎn)生的時間往往也是非常重要的。也就是說,不能離開嵌入式系統(tǒng)運行的整個環(huán)境來測試嵌人式系統(tǒng)。另外,嵌入式系統(tǒng)有時沒有配備鍵盤和顯示器,這導致不能了解系統(tǒng)的運行情況,也不能影響系統(tǒng)的運行,從而導致測試嵌入式系統(tǒng)的困難。
編輯推薦
《嵌入式系統(tǒng)設計原理及應用(第2版)》全面系統(tǒng)地介紹了嵌入式系統(tǒng)硬、軟件平臺構建原理及技術。采用了自底向上的描述手段,先后介紹了硬件平臺構建技術、軟件平臺構建技術、嵌入式網(wǎng)絡技術.以及嵌入式系統(tǒng)的設計方法學。采用了原理描述加設計實例的方法,以S3C2410嵌入式微處理器芯片為背景.這樣做將使得原理概念具體化,而不至于抽象.深奧?!肚度胧较到y(tǒng)設計原理及應用(第2版)》適合作為計算機科學與技術、電子工程、通信工程等專業(yè)的高年級本科生或低年級研究生嵌入式原理相關課程的教材。
圖書封面
評論、評分、閱讀與下載