讀者對(duì)象:可作為高等院校計(jì)算機(jī)專業(yè)、電類專業(yè)、自動(dòng)化以及機(jī)電一體化專業(yè)本科生“嵌入式系統(tǒng)”、“嵌入式系統(tǒng)體系結(jié)構(gòu)”、“嵌入式系統(tǒng)原理及應(yīng)用”及“嵌入式系統(tǒng)設(shè)計(jì)”等課程的教材和參考書, 也可供希望了解和掌握嵌入式系統(tǒng)的技術(shù)人員參考閱讀
《普通高等教育“十一五”國家級(jí)規(guī)劃教材·計(jì)算機(jī)系列教材:嵌入式系統(tǒng)教程》是一本全面介紹嵌入式系統(tǒng)的教材,內(nèi)容包括系統(tǒng)概述到硬件系統(tǒng)、軟件系統(tǒng)、操作系統(tǒng)以及嵌入式系統(tǒng)的實(shí)現(xiàn),覆蓋面廣,系統(tǒng)深入,并重點(diǎn)介紹了嵌入式Linux。全書共分為12章,分別為嵌入式系統(tǒng)概述,嵌入式系統(tǒng)設(shè)計(jì)的系統(tǒng)工程方法,嵌入式處理器,嵌入式系統(tǒng)的I/O模塊,嵌入式系統(tǒng)的軟件,嵌入式網(wǎng)絡(luò)與協(xié)議棧,嵌入式操作系統(tǒng),嵌入式Linux的開發(fā)環(huán)境,嵌入式Linux系統(tǒng)的組成和構(gòu)建,嵌入式Linux系統(tǒng)內(nèi)核原理和移植,嵌入式Linux系統(tǒng)的驅(qū)動(dòng)程序,嵌入式系統(tǒng)的實(shí)現(xiàn)和調(diào)試。
《普通高等教育“十一五”國家級(jí)規(guī)劃教材·計(jì)算機(jī)系列教材:嵌入式系統(tǒng)教程》結(jié)構(gòu)合理,內(nèi)容系統(tǒng)、全面,可作為高等院校計(jì)算機(jī)專業(yè)、電類專業(yè)、自動(dòng)化以及機(jī)電一體化專業(yè)本科生“嵌入式系統(tǒng)”、“嵌入式系統(tǒng)體系結(jié)構(gòu)”、“嵌入式系統(tǒng)原理及應(yīng)用”及“嵌入式系統(tǒng)設(shè)計(jì)”等課程的教材和參考書,也可供希望了解和掌握嵌入式系統(tǒng)的技術(shù)人員參考閱讀。
本書是普通高等教育“十一五”國家級(jí)規(guī)劃教材。適用于計(jì)算機(jī)專業(yè)及相關(guān)專業(yè)本科生或研究生,可作為嵌入式系統(tǒng)相關(guān)課程的教材和參考書。
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,嵌入式技術(shù)已經(jīng)是繼網(wǎng)絡(luò)技術(shù)之后,又一個(gè)得到廣泛應(yīng)用的新的技術(shù)發(fā)展方向,已成為IT領(lǐng)域的基礎(chǔ)技術(shù)之一。嵌入式系統(tǒng)是計(jì)算機(jī)軟件與硬件的完美結(jié)合,近年來已廣泛地應(yīng)用于軍事、家庭、工業(yè)、商業(yè)、辦公、醫(yī)療等社會(huì)各個(gè)方面。
本書系統(tǒng)地介紹了嵌入式系統(tǒng),從系統(tǒng)概述到硬件系統(tǒng)、軟件系統(tǒng)、操作系統(tǒng)以及嵌入式系統(tǒng)的實(shí)現(xiàn),并重點(diǎn)介紹了嵌入式Linux。本書詳細(xì)介紹了嵌入式系統(tǒng)各組成部分的功能與設(shè)計(jì),由淺入深地對(duì)嵌入式系統(tǒng)的基本理論知識(shí)和技巧進(jìn)行詳細(xì)分析和論述,幫助學(xué)生掌握嵌入式系統(tǒng)的基本概念,學(xué)會(huì)使用系統(tǒng)開發(fā)工具,學(xué)習(xí)系統(tǒng)開發(fā)方法和開發(fā)流程。本書不僅注意介紹技術(shù)和方法,而且注重對(duì)經(jīng)典的結(jié)構(gòu)和思想等的論述和分析。
本教材具有如下主要特點(diǎn)。
(1) 取材先進(jìn),體系完整,覆蓋面廣,深度與廣度相結(jié)合。
(2) 重點(diǎn)突出,可讀性好,語言簡練,通俗易懂。
(3) 結(jié)構(gòu)合理,內(nèi)容系統(tǒng),主題安排邏輯性強(qiáng)。
(4) 表達(dá)明晰,突出強(qiáng)調(diào)示例。
全書共有12章。第1章為“嵌入式系統(tǒng)概述”,簡單介紹了嵌入式系統(tǒng)的概念以及嵌入式系統(tǒng)的發(fā)展,并介紹了嵌入式系統(tǒng)的應(yīng)用。第2章從工程設(shè)計(jì)的角度,介紹了嵌入式系統(tǒng)的設(shè)計(jì)方法。第3章為“嵌入式處理器”,講述了嵌入式系統(tǒng)的硬件組成,介紹了嵌入式處理器的發(fā)展,并詳細(xì)講述了幾種典型的嵌入式處理器,特別是ARM系列的嵌入式處理器。第4章介紹了嵌入式系統(tǒng)的I/O模塊的基本結(jié)構(gòu),包括通信接口、通用并行接口、中斷接口等I/O接口的內(nèi)部結(jié)構(gòu)和基本操作,并以實(shí)例說明了接口的實(shí)現(xiàn)方式。第5章講述了嵌入式系統(tǒng)軟件的開發(fā)方式、嵌入式系統(tǒng)軟件的結(jié)構(gòu),介紹了嵌入式Linux中的常用軟件。第6章為“嵌入式網(wǎng)絡(luò)與協(xié)議!,講述了嵌入式網(wǎng)絡(luò)及嵌入式系統(tǒng)的聯(lián)網(wǎng),介紹了嵌入式Internet技術(shù)、藍(lán)牙技術(shù)。第7章為“嵌入式操作系統(tǒng)”,講述了嵌入式操作系統(tǒng)及實(shí)時(shí)系統(tǒng)的基本概念和功能,介紹了幾種常用的嵌入式操作系統(tǒng),并介紹了一個(gè)嵌入式操作系統(tǒng)的實(shí)例——μC/OSⅡ操作系統(tǒng)。第8章和第9章分別講述了嵌入式Linux的開發(fā)環(huán)境和系統(tǒng)組成及構(gòu)建。第8章介紹程序生成工具GCC工具鏈、工程管理工具M(jìn)ake和Makefile、GDB調(diào)試工具以及主機(jī)開發(fā)環(huán)境設(shè)置。第9章介紹嵌入式Linux系統(tǒng)的結(jié)構(gòu)、嵌入式Linux的BootLoader、嵌入式Linux內(nèi)核的構(gòu)建、根文件系統(tǒng)等。第10章為“嵌入式Linux系統(tǒng)內(nèi)核原理和移植”,講述了嵌入式Linux內(nèi)核的工作原理,介紹了Linux內(nèi)核的移植工作,并以基于S3C2410 嵌入式系統(tǒng)的Linux 2.6的移植為例,介紹了嵌入式Linux操作系統(tǒng)移植的基本步驟。第11章為“嵌入式Linux系統(tǒng)的驅(qū)動(dòng)程序”,講述了Linux系統(tǒng)的內(nèi)核編寫及驅(qū)動(dòng)程序的編寫基礎(chǔ),介紹了嵌入式Linux中的幾種驅(qū)動(dòng)程序。第12章為“嵌入式系統(tǒng)的實(shí)現(xiàn)和調(diào)試”,講述嵌入式系統(tǒng)的軟件測(cè)試流程,介紹了嵌入式系統(tǒng)的調(diào)試和嵌入式系統(tǒng)的集成開發(fā)環(huán)境,并分析了嵌入式系統(tǒng)設(shè)計(jì)中的功耗、電磁兼容性等問題。
本書借鑒了國內(nèi)外經(jīng)典的相關(guān)教材,吸取了它們各自的優(yōu)點(diǎn),并將其內(nèi)容有機(jī)地結(jié)合在一起。本書按層次和模塊化結(jié)構(gòu)組織教學(xué)內(nèi)容,授課老師可以根據(jù)需要及課時(shí)的多少,對(duì)內(nèi)容進(jìn)行靈活的取舍。教學(xué)課時(shí)可以安排為48~64學(xué)時(shí)。
本書由同濟(jì)大學(xué)的張晨曦教授、清華大學(xué)的韓超、國防科技大學(xué)的沈立、同濟(jì)大學(xué)的李江峰以及清華大學(xué)的陳渝編寫。張晨曦教授對(duì)全書進(jìn)行了統(tǒng)稿。
本書直接或間接地引用了許多專家和學(xué)者的文獻(xiàn)或著作,在此向他們表示衷心的感謝。
由于作者水平有限,書中難免有疏漏和不妥之處,敬請(qǐng)讀者批評(píng)指正。請(qǐng)把相關(guān)的信息發(fā)送到xzhang2000@sohu.com。
歡迎訪問張晨曦教授的微博和個(gè)人網(wǎng)站: weibo.com/FotoSky,www.FotoSky.com
編者
2012年2月于上海
第1章 嵌入式系統(tǒng)概述
1.1 嵌入式系統(tǒng)的概念
1.2 嵌入式系統(tǒng)的發(fā)展
1.2.1 嵌入式系統(tǒng)的產(chǎn)生
1.2.2 嵌入式系統(tǒng)的發(fā)展歷史
1.2.3 嵌入式系統(tǒng)的發(fā)展趨勢(shì)
1.3 嵌入式系統(tǒng)的特點(diǎn)
1.4 嵌入式系統(tǒng)的組成
1.4.1 嵌入式系統(tǒng)的硬件
1.4.2 嵌入式系統(tǒng)的軟件
1.5 嵌入式系統(tǒng)的分類
1.6 嵌入式系統(tǒng)的應(yīng)用
習(xí)題
第2章 嵌入式系統(tǒng)設(shè)計(jì)的系統(tǒng)工程方法
2.1 嵌入式系統(tǒng)設(shè)計(jì)模型和設(shè)計(jì)步驟
2.2 系統(tǒng)需求分析
2.2.1 需求描述階段
2.2.2 規(guī)格說明階段
2.3 系統(tǒng)設(shè)計(jì)
2.3.1 體系結(jié)構(gòu)設(shè)計(jì)
2.3.2 硬件平臺(tái)的選擇
2.3.3 軟件平臺(tái)的選擇
2.3.4 硬件和軟件的劃分
2.3.5 嵌入式系統(tǒng)設(shè)計(jì)方法
2.4 系統(tǒng)集成與調(diào)試
2.4.1 系統(tǒng)集成
2.4.2 系統(tǒng)調(diào)試
2.5 系統(tǒng)測(cè)試
2.5.1 嵌入式系統(tǒng)的測(cè)試方法
2.5.2 嵌入式系統(tǒng)的測(cè)試工具
2.5.3 嵌入式系統(tǒng)的測(cè)試策略
2.6 系統(tǒng)維護(hù)
習(xí)題
第3章 嵌入式處理器
3.1 嵌入式系統(tǒng)的硬件組成
3.1.1 處理器
3.1.2 存儲(chǔ)器
3.1.3 附屬電路與I/O模塊
3.1.4 調(diào)試接口
3.2 嵌入式處理器
3.2.1 嵌入式微處理器
3.2.2 嵌入式微控制器
3.2.3 數(shù)字信號(hào)處理器
3.2.4 如何選擇嵌入式處理器
3.2.5 嵌入式處理器的發(fā)展
3.3 SoC嵌入式處理器
3.4 典型的嵌入式處理器
3.4.1 ARM系列
3.4.2 PowerPC系列
3.4.3 MC68HC12系列
3.4.4 ColdFire系列
3.4.5 x86系列
3.4.6 Intel 8051系列微控制器
3.4.7 Microchip系列微控制器
3.4.8 TI公司TMS320系列DSP
3.5 ARM體系結(jié)構(gòu)
3.5.1 ARM處理器的運(yùn)行模式
3.5.2 ARM微處理器的工作狀態(tài)
3.5.3 ARM吏持的數(shù)據(jù)類型
3.5.4 ARM微處理器的寄存器組織
3.5.5 ARM微處理器的異常處理機(jī)制
3.5.6 ARM處理器的應(yīng)用選型
習(xí)題
第4章 嵌入式系統(tǒng)的I/O模塊
4.1 110接口的基本結(jié)構(gòu)
……
第5章 嵌入式系統(tǒng)的軟件
第6章 嵌入式網(wǎng)絡(luò)與協(xié)議
第7章 嵌入式操作系統(tǒng)
第8章 嵌入式Linux的開發(fā)環(huán)境
第9章 嵌入式Linux系統(tǒng)的組成和構(gòu)建
第10章 嵌入式Linux系統(tǒng)內(nèi)核原理和移植
第11章 嵌入式Linux系統(tǒng)的驅(qū)動(dòng)程序
第12章 嵌入式系統(tǒng)的實(shí)現(xiàn)和調(diào)試
習(xí)題
網(wǎng)絡(luò)表現(xiàn)出的優(yōu)先級(jí)倒置現(xiàn)象,主要存在以下兩種情況。
(1)報(bào)文的優(yōu)先級(jí)不同。當(dāng)一個(gè)低優(yōu)先級(jí)的報(bào)文在網(wǎng)絡(luò)上傳輸時(shí),網(wǎng)絡(luò)的使用權(quán)就被分配給這個(gè)低優(yōu)先級(jí)的報(bào)文,并允許它阻塞任何高優(yōu)先級(jí)的報(bào)文,直到把它傳輸完為止。因?yàn)槊總(gè)報(bào)文的長度都是有限的,所以這種優(yōu)先級(jí)倒置現(xiàn)象不會(huì)導(dǎo)致死鎖,但是可能會(huì)延遲關(guān)鍵性的通信。對(duì)此,唯一能做的就是分析網(wǎng)絡(luò)的行為來確定優(yōu)先級(jí)倒置是否可能導(dǎo)致一些報(bào)文延遲時(shí)間過長。
。2)報(bào)文的優(yōu)先級(jí)相同。例如,采用循環(huán)仲裁的網(wǎng)絡(luò)中,所有的通信具有相同的優(yōu)先級(jí)。但是,每個(gè)設(shè)備中運(yùn)行的進(jìn)程的優(yōu)先級(jí)不同,從整個(gè)網(wǎng)絡(luò)方面來考慮,認(rèn)為網(wǎng)絡(luò)的用戶具有不同的優(yōu)先級(jí)。在某一時(shí)刻,低優(yōu)先級(jí)用戶的發(fā)送操作會(huì)阻礙高優(yōu)先級(jí)用戶的發(fā)送,這種現(xiàn)象也屬于優(yōu)先級(jí)倒置問題。
6.3.2系統(tǒng)性能分析
由于網(wǎng)絡(luò)的復(fù)雜性,使得對(duì)嵌入式網(wǎng)絡(luò)系統(tǒng)的性能分析非常困難。對(duì)復(fù)雜的基于網(wǎng)絡(luò)應(yīng)用的嵌入式系統(tǒng)進(jìn)行精確的性能分析,要使用CAD工具。有些算法可以有效地確定進(jìn)程開始和完成時(shí)間的上界和下界,
如果沒有計(jì)算機(jī)輔助工具來幫助分析性能,那么手工設(shè)計(jì)必須滿足硬實(shí)時(shí)要求的嵌入式系統(tǒng)時(shí)要非常小心。系統(tǒng)在力圖達(dá)到硬實(shí)時(shí)的時(shí)間確定性要求時(shí),應(yīng)該確保關(guān)鍵性的任務(wù)是活動(dòng)的,這一點(diǎn)非常重要。例如,設(shè)計(jì)一個(gè)嵌入式硬實(shí)時(shí)系統(tǒng),包括通信部分、數(shù)據(jù)處理部分、人機(jī)界面部分,為了保證系統(tǒng)的時(shí)間確定性,通常用戶界面的活動(dòng)和其他非基本任務(wù)都可以臨時(shí)關(guān)掉。
……