本書是一本系統(tǒng)講解嵌入式系統(tǒng)架構(gòu)的書,講述了板級和FPGA級兩種典型架構(gòu)。全書分為三部分。第壹部分主要介紹了嵌入式系統(tǒng);第二部分介紹嵌入式系統(tǒng)的硬件開發(fā);第三部分介紹嵌入式系統(tǒng)的軟件開發(fā);第四部分介紹軟硬件協(xié)同開發(fā)。
出版者的話
第1版推薦序
致謝
關(guān)于作者
第一部分 嵌入式系統(tǒng)簡介
第1章 嵌入式系統(tǒng)設(shè)計的系統(tǒng)化方法 2
1.1 什么是嵌入式系統(tǒng) 2
1.2 嵌入式系統(tǒng)的體系結(jié)構(gòu)簡介 3
1.3 嵌入式系統(tǒng)模型 5
1.4 為什么使用整體化、體系結(jié)構(gòu)化的系統(tǒng)工程方法?黃金法則是什么 6
1.5 小結(jié) 11
習(xí)題 11
尾注 13
第2章 了解設(shè)計標(biāo)準(zhǔn) 14
2.1 編程語言概述及其標(biāo)準(zhǔn)示例 20
2.1.1 影響嵌入式系統(tǒng)體系結(jié)構(gòu)的編程語言示例:腳本語言、Java和.NET 22
2.1.2 垃圾回收機制 25
2.1.3 處理Java字節(jié)碼 27
2.2 標(biāo)準(zhǔn)與網(wǎng)絡(luò) 30
2.2.1 互連設(shè)備間的距離 30
2.2.2 物理介質(zhì) 31
2.2.3 網(wǎng)絡(luò)架構(gòu) 33
2.2.4 OSI模型 33
2.3 基于多種標(biāo)準(zhǔn)的設(shè)備示例:數(shù)字電視(DTV) 43
2.4 小結(jié) 55
習(xí)題 56
尾注 57
第二部分 嵌入式硬件
第3章 嵌入式硬件的組件和嵌入式系統(tǒng)板 60
3.1 學(xué)習(xí)硬件的第一節(jié)課:學(xué)習(xí)讀懂原理圖 60
3.2 嵌入式系統(tǒng)板和馮·諾依曼模型 63
3.3 給硬件供電 65
3.4 基礎(chǔ)硬件材料:導(dǎo)體、絕緣體和半導(dǎo)體 67
3.5 電路板上和芯片中常見的無源元件:電阻器、電容器和電感器 70
3.5.1 電阻器 70
3.5.2 電容器 73
3.5.3 電感器 74
3.6 半導(dǎo)體以及處理器和存儲器的有源構(gòu)建模塊 75
3.6.1 二極管 75
3.6.2 晶體管 76
3.6.3 從基本的門電路構(gòu)建出更復(fù)雜的電路 80
3.6.4 時序邏輯和時鐘 81
3.7 全部整合到一起:集成電路 83
3.8 小結(jié) 85
習(xí)題 85
尾注 89
第4章 嵌入式處理器 90
4.1 ISA體系結(jié)構(gòu)模型 92
4.1.1 功能 92
4.1.2 ISA模型 97
4.2 處理器內(nèi)部設(shè)計 102
4.2.1 中央處理單元 104
4.2.2 片上存儲器 115
4.2.3 處理器I/O 124
4.2.4 處理器總線 141
4.3 處理器性能 142
4.4 閱讀處理器的數(shù)據(jù)手冊 144
4.5 小結(jié) 153
習(xí)題 153
尾注 155
第5章 板載存儲器 156
5.1 ROM 159
5.2 RAM 162
5.3 輔助存儲器 168
5.4 外部存儲器的存儲管理 171
5.5 板載存儲器及其性能 172
5.6 小結(jié) 173
習(xí)題 173
尾注 174
第6章 板載 I/O 175
6.1 數(shù)據(jù)管理:串行I/O與并行I/O 177
6.1.1 串行I/O 177
6.1.2 并行I/O 184
6.2 互連I/O組件 191
6.2.1 互連I/O設(shè)備和嵌入式系統(tǒng)板 191
6.2.2 互連I/O控制器和主CPU 193
6.3 I/O與性能 193
6.4 小結(jié) 194
習(xí)題 194
尾注 197
第7章 板載總線 198
7.1 總線仲裁和時序 199
7.2 將總線與其他板載組件集成 206
7.3 總線性能 207
7.4 小結(jié) 207
習(xí)題 208
尾注 209
第三部分 嵌入式軟件介紹
第8章 設(shè)備驅(qū)動程序 213
8.1 示例1:中斷處理的設(shè)備驅(qū)動程序 216
8.1.1 中斷優(yōu)先級 218
8.1.2 上下文切換 221
8.1.3 中斷設(shè)備驅(qū)動程序偽代碼示例 222
8.1.4 中斷處理及其性能 228
8.2 示例2:存儲器設(shè)備驅(qū)動程序 229
8.3 示例3:板載總線設(shè)備驅(qū)動程序 246
8.4 板載I/O驅(qū)動程序示例 251
8.4.1 示例4:初始化以太網(wǎng)驅(qū)動程序 251
8.4.2 示例5:初始化RS-232驅(qū)動程序 264
8.5 小結(jié) 268
習(xí)題 268
尾注 270
第9章 嵌入式操作系統(tǒng) 271
9.1 什么是進(jìn)程 274
9.2 多任務(wù)和進(jìn)程管理 276
9.2.1 進(jìn)程實現(xiàn) 276
9.2.2 進(jìn)程調(diào)度 285
9.2.3 任務(wù)間通信和同步 294
9.3 內(nèi)存管理 299
9.3.1 用戶存儲空間 300
9.3.2 內(nèi)核存儲空間 308
9.4 I/O和文件系統(tǒng)管理 309
9.5 操作系統(tǒng)標(biāo)準(zhǔn)示例:POSIX 310
9.6 操作系統(tǒng)性能指南 312
9.7 選擇正確的嵌入式操作系統(tǒng)以及BSP 312
9.8 小結(jié) 313
習(xí)題 314
尾注 316
第10章 中間件和應(yīng)用軟件 317
10.1 什么是中間件 317
10.2 什么是應(yīng)用程序 319
10.3 中間件示例 319
10.4 應(yīng)用層軟件示例 345
10.4.1 FTP客戶端應(yīng)用軟件示例 346
10.4.2 SMTP和電子郵件示例 348
10.4.3HTTP客戶端和服務(wù)器示例 352
10.4.4 對應(yīng)用整合的簡要說明 354
10.5 小結(jié) 358
習(xí)題 358
尾注 360
第四部分 系統(tǒng)整合:設(shè)計與開發(fā)
第11章 定義系統(tǒng):創(chuàng)建體系結(jié)構(gòu)和設(shè)計文檔化 362
11.1 創(chuàng)建嵌入式系統(tǒng)體系結(jié)構(gòu) 363
11.1.1 階段1:打好堅實的技術(shù)基礎(chǔ) 364
11.1.2 階段2:了解嵌入式系統(tǒng)的體系結(jié)構(gòu)業(yè)務(wù)周期 364
11.1.3 階段3:詳細(xì)描述體系結(jié)構(gòu)的模式和參考模型 372
11.1.4 階段4:創(chuàng)建體系結(jié)構(gòu)的框架 378
11.1.5 階段5:體系結(jié)構(gòu)的文檔化 380
11.1.6 階段6:對體系結(jié)構(gòu)進(jìn)行分析和評估 381
11.2 小結(jié) 382
習(xí)題 383
尾注 384
第12章 嵌入式系統(tǒng)設(shè)計的最后階段:實現(xiàn)和測試 385
12.1 設(shè)計的實現(xiàn) 385
12.1.1 主要的軟件實用工具:在編輯器或IDE中編寫代碼 386
12.1.2 CAD和硬件 387
12.1.3 翻譯工具:預(yù)處理器、解釋器、編譯器和鏈接器 388
12.1.4 調(diào)試工具 390
12.1.5 系統(tǒng)啟動 396
12.2 對設(shè)計的質(zhì)量保證和測試 403
12.3