注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計程序設計綜合嵌入式系統(tǒng):體系結構、編程與設計

嵌入式系統(tǒng):體系結構、編程與設計

嵌入式系統(tǒng):體系結構、編程與設計

定 價:¥69.00

作 者: (?。㏑aj Kamal編著;陳曙暉等譯;陳曙暉譯
出版社: 清華大學出版社
叢編項: 國外計算機科學經(jīng)典教材
標 簽: 嵌入式計算機

ISBN: 9787302096245 出版時間: 2005-05-01 包裝: 膠版紙
開本: 26cm 頁數(shù): 560 字數(shù):  

內(nèi)容簡介

  可以毫不夸張地說,這是嵌入式系統(tǒng)的經(jīng)典書籍,在閱讀本書的英文版時,我們多次拍案叫絕,尤其是被作者在硬件、軟件和應用領域的廣博知識所折服。本書作者RajKamal教授在無線電子、微處理器、微控制器、計算機組成和體系結構以及嵌入式系統(tǒng)和計算機網(wǎng)絡等領域有30多年的理論和實驗教學經(jīng)驗。與其他書籍相比,本書面向的是嵌入式系統(tǒng)開發(fā)的初中級設計人員,是一本深入淺出的嵌入式系統(tǒng)教程。我想這也是作者的初衷。本書的特點在于,它不僅全面介紹了嵌入式系統(tǒng)的基礎知識,而且通過大量詳盡的示例幫助讀者理解理論知識。當然,這些真實案例對系統(tǒng)設計人員來說具有非常好的參考價值。如本書第11章中的“巧克力自動售賣機”、“網(wǎng)絡傳輸”、“汽車自適應行駛系統(tǒng)”、“智能卡”等完整案例,對于未接觸過嵌入式系統(tǒng)開發(fā),但想要盡快熟悉開發(fā)過程的設計人員提供了很好的示范和模板。更難得的是,本書并沒有拘泥于介紹傳統(tǒng)的嵌入式系統(tǒng)原理和設計方法,嵌入式系統(tǒng)領域的新興技術和產(chǎn)品同樣得到關注。

作者簡介

暫缺《嵌入式系統(tǒng):體系結構、編程與設計》作者簡介

圖書目錄

第1章  嵌入式系統(tǒng)簡介    1
1.1  嵌入式系統(tǒng)    2
1.1.1  系統(tǒng)    2
1.1.2  嵌入式系統(tǒng)    3
1.1.3  嵌入式系統(tǒng)的分類    4
1.1.4  嵌入式系統(tǒng)設計者需要具備的技能    5
1.2  系統(tǒng)中的處理器    6
1.2.1  系統(tǒng)中的處理器    6
1.2.2  微處理器    7
1.2.3  微控制器    8
1.2.4  復雜系統(tǒng)的嵌入式處理器10
1.2.5  數(shù)字信號處理器    11
1.2.6  嵌入式系統(tǒng)的專用系統(tǒng)處理器11
1.2.7  使用通用處理器的多處理器系統(tǒng)12
1.3  其他硬件單元    13
1.3.1  電源和低功耗管理    13
1.3.2  時鐘振蕩電路和時鐘單元15
1.3.3  系統(tǒng)需要的各種計時和計數(shù)功能的實時時鐘和定時器    16
1.3.4  復位電路、加電復位和Watchdog定時器復位    16
1.3.5  存儲器    17
1.3.6  輸入、輸出和I/O端口,IO總線和IO接口    18
1.3.7  中斷處理器    19
1.3.8  DAC(使用PWM)和ADC    19
1.3.9  LCD和LED顯示    20
1.3.10  小鍵盤/鍵盤    21
1.3.11  脈沖撥號電路、調(diào)制解調(diào)器和收發(fā)器    21
1.3.12  GPIB(IEEE 488)連接    21
1.3.13  嵌入式系統(tǒng)硬件的連接和接口總線及單元    22
1.3.14  案例中所需要的硬件單元    22
1.4  嵌入系統(tǒng)軟件    24
1.4.1  產(chǎn)品的最終機器可實現(xiàn)軟件    24
1.4.2  用機器碼編寫軟件    25
1.4.3  用特定于處理器的匯編語言編寫軟件    26
1.4.4  用高級語言編寫軟件    27
1.4.5  使用操作系統(tǒng)的設備驅(qū)動程序和設備管理軟件    29
1.4.6  多任務調(diào)度和使用RTOS設備的軟件設計    30
1.4.7  設計嵌入式系統(tǒng)的軟件工具    30
1.4.8  示例中需要的軟件工具    32
1.4.9  軟件設計模型    32
1.5  示例嵌入式系統(tǒng)    33
1.6  嵌入式片上系統(tǒng)(SOC)和內(nèi)部VLSI電路    35
1.6.1  用于便攜式電話的SoC示例    35
1.6.2  ASIP    36
1.6.3  IP核    36
1.6.4  嵌入GPP    37
1.6.5  具有一個或者多個處理器的FPGA核    37
1.6.6  示例SoC中的組成部分—— 智能卡    38
第2章  處理器和存儲器組織    45
2.1  處理器中的結構單元    46
2.2  嵌入式系統(tǒng)的處理器選擇    55
2.3  存儲器設備    58
2.3.1  ROM:使用方法、形式和變種    59
2.3.2  RAM設備    60
2.4  嵌入式系統(tǒng)的存儲器選擇    61
2.5  程序段和塊的存儲器分配及系統(tǒng)的存儲器映射    64
2.5.1  各種存儲器段中的函數(shù)、過程、數(shù)據(jù)和堆棧    64
2.5.2  不同數(shù)據(jù)結構和數(shù)據(jù)集合元素的存儲器塊    66
2.5.3  存儲器映射    71
2.5.4  內(nèi)部設備和I/O設備在映射中的地址    77
2.6  直接存儲器訪問    79
2.7  處理器、存儲器和I/O設備的接口    80
第3章  設備網(wǎng)絡的設備和總線    87
3.1  I/O設備    88
3.1.1  I/O設備的類型和示例    88
3.1.2  串行設備的同步、準同步和異步通信    90
3.1.3  內(nèi)部串行通信設備的示例    93
3.1.4  并口設備    95
3.1.5  設備端口的復雜接口特性    97
3.2  定時器和計數(shù)設備    98
3.3  互連的多個設備之間通過I2C、CAN和高級I/O總線進行串行通信    102
3.3.1  I2C總線    102
3.3.2  CAN總線    103
3.3.3  USB總線    105
3.3.4  先進的串行高速總線    105
3.4  多個互連I/O設備之間通過ISA、PCI、PCI-X和高級總線進行的計算機
或者主機系統(tǒng)并行通信    106
3.4.1  ISA總線    106
3.4.2  PCI和PCI/X總線    107
3.4.3  高級并行高速總線    108
第4章  設備驅(qū)動程序和中斷服務機制    115
4.1  設備驅(qū)動程序    117
4.1.1  不使用ISR的設備服務    117
4.1.2  設備驅(qū)動程序ISR    118
4.1.3  設備驅(qū)動程序    120
4.1.4  作為設備驅(qū)動和網(wǎng)絡函數(shù)的Linux 內(nèi)幕    121
4.1.5  編寫系統(tǒng)中的物理設備驅(qū)動ISR    122
4.1.6  虛擬設備    123
4.2  系統(tǒng)中的并口設備驅(qū)動程序    124
4.3  系統(tǒng)中的串口設備驅(qū)動程序    130
4.4  內(nèi)部可編程定時設備的設備驅(qū)動程序    134
4.5  中斷服務(處理)機制    135
4.5.1  硬件和軟件相關的中斷源    135
4.5.2  軟件錯誤相關的硬件中斷    135
4.5.3  軟件指令相關的中斷源    137
4.5.4  內(nèi)部設備相關的硬件中斷    138
4.5.5  中斷向量    138
4.5.6  根據(jù)可屏蔽和不可屏蔽的中斷分類    138
4.5.7  所有可屏蔽中斷源的激活(未屏蔽)和禁用(屏蔽)    139
4.5.8  中斷掛起寄存器或者狀態(tài)寄存器    139
4.6  上下文和上下文切換周期、最終期限和中斷延遲    139
4.6.1  上下文、延遲和最終期限    139
4.6.2  從上下文保存的角度對處理器中斷服務機制的分類    143
4.6.3  使用DMA通道幫助縮短中斷延遲周期    144
4.6.4  滿足服務最終期限的優(yōu)先級分配    144
4.6.5  硬件優(yōu)先級的軟件覆蓋    145
第5章  編程概念及C與C++的嵌入式編程    150
5.1  用匯編語言和高級語言C進行軟件編程    151
5.2  C程序中的元素:頭文件、源文件以及預處理指令    152
5.2.1  用于包含文件的include指令    152
5.2.2  源文件    154
5.2.3  配置文件    154
5.2.4  預處理指令    154
5.3  程序元素:宏與函數(shù)    154
5.4  程序元素:數(shù)據(jù)類型、數(shù)據(jù)結構、修飾符、語句、循環(huán)和指針    156
5.4.1  數(shù)據(jù)類型    156
5.4.2  使用數(shù)據(jù)結構:隊列、堆棧、鏈表和樹    156
5.4.3  修飾符    158
5.4.4  條件語句、循環(huán)語句以及無限循環(huán)語句    159
5.4.5  指針和NULL指針    161
5.4.6  函數(shù)調(diào)用    163
5.4.7  主程序中按照循環(huán)順序進行的多函數(shù)調(diào)用    164
5.4.8  函數(shù)指針、函數(shù)隊列和中斷服務例程隊列    166
5.5  隊列    167
5.5.1  隊列    167
5.5.2  實現(xiàn)網(wǎng)絡協(xié)議的隊列    170
5.5.3  發(fā)生中斷時函數(shù)的排列    172
5.5.4  網(wǎng)絡中進行流控制的FIPO隊列    174
5.6  堆棧    175
5.7  鏈表與有序鏈表    178
5.7.1  鏈表    178
5.7.2  活動設備驅(qū)動器(軟件時鐘)的鏈表    186
5.7.3  就緒鏈表中的任務鏈表    187
5.8  C++嵌入式編程    189
5.8.1  面向?qū)ο蟮木幊?nbsp;   189
5.8.2  C++的嵌入式編程    189
5.9  用Java進行嵌入式編程    191
5.9.1  什么時候用Java編程    191
5.9.2  Java的缺點    191
5.10  C程序編譯器與交叉編譯器    193
5.11  嵌入式C/C++的源代碼工程管理工具    194
5.12  存儲器需求的優(yōu)化    194
第6章  單處理器和多處理器系統(tǒng)軟件開發(fā)過程中的程序建模概念    201
6.1  軟件實現(xiàn)之前對軟件分析過程的建模    202
6.1.1  數(shù)據(jù)流圖在程序分析中的用法    202
6.1.2  用于程序分析的控制數(shù)據(jù)流圖的用法    204
6.2  用于事件控制或者響應時間受到約束的實時程序的編程模型    205
6.2.1  有限狀態(tài)機模型    205
6.2.2  Petri網(wǎng)模型    209
6.3  多處理器系統(tǒng)的建模    215
6.3.1  多處理器系統(tǒng)中的問題    216
6.3.2  模型    217
6.3.3  同步數(shù)據(jù)流圖模型    218
6.3.4  同構的同步數(shù)據(jù)流圖模型    219
6.3.5  無環(huán)優(yōu)先擴展圖模型    220
6.3.6  定時的Petri網(wǎng)和擴展預測/轉(zhuǎn)換網(wǎng)模型    221
6.3.7  多線程圖系統(tǒng)模型    222
6.3.8  圖和Petri網(wǎng)在多處理器系統(tǒng)中的應用    223
第7章  嵌入式軟件開發(fā)過程中的軟件工程實踐    233
7.1  軟件的算法復雜度    234
7.2  軟件開發(fā)生命周期及其模型    236
7.2.1  軟件開發(fā)過程中的線性順序模型(瀑布模型或者生命周期模型)    236
7.2.2  RAD模型    237
7.2.3  增量模型    237
7.2.4  并發(fā)模型    238
7.2.5  基于組件(面向?qū)ο?的軟件開發(fā)過程模型    238
7.2.6  基于第四代工具的軟件開發(fā)過程模型    238
7.2.7  基于面向?qū)ο蠛突诘谒拇ぞ叩姆椒?nbsp;   239
7.3  軟件分析    239
7.4  軟件設計    241
7.5  軟件實現(xiàn)    242
7.6  軟件測試、確認以及調(diào)試    243
7.6.1  測試、驗證以及確認    243
7.6.2  調(diào)試    246
7.7  軟件開發(fā)過程中的實時程序設計問題    248
7.7.1  在需求和規(guī)范的分析中存在的問題    248
7.7.2  設計和實現(xiàn)中存在的問題    249
7.7.3  系統(tǒng)集成中的問題    249
7.7.4  測試中的問題    249
7.8  軟件項目管理    250
7.8.1  項目管理    250
7.8.2  項目測度    251
7.9  軟件維護    253
7.10  統(tǒng)一建模語言(UML)    255
第8章  進程間通信與進程、任務和線程的同步    265
8.1  應用程序中的多個進程    266
8.1.1  進程    266
8.1.2  任務    266
8.1.3  線程    268
8.1.4  通過函數(shù)、ISR和任務的特征進行區(qū)分    269
8.2  多任務和多例程的數(shù)據(jù)共享問題    270
8.2.1  數(shù)據(jù)共享問題及其解決方案    270
8.2.2  對任務或者任務的臨界段使用信號量    271
8.2.3  優(yōu)先級倒置問題和死鎖情況    279
8.3  進程間通信    280
8.3.1  信號    281
8.3.2  信號量標識或者互斥體用作資源鍵(用于進程的資源加鎖和解鎖)    281
8.3.3  消息隊列    282
8.3.4  郵箱    284
8.3.5  管道    285
8.3.6  虛擬(邏輯)套接字    287
8.3.7  遠程過程調(diào)用(RPC)    287
第9章  實時操作系統(tǒng)    292
9.1  操作系統(tǒng)服務    293
9.1.1  目標    293
9.1.2  結構    294
9.1.3  內(nèi)核    295
9.1.4  進程管理    296
9.1.5  存儲器管理    297
9.1.6  設備管理    298
9.1.7  文件系統(tǒng)的組織和實現(xiàn)    300
9.2  I/O子系統(tǒng)    302
9.3  網(wǎng)絡操作系統(tǒng)    302
9.4  實時操作系統(tǒng)與嵌入式操作系統(tǒng)    304
9.4.1  實時操作系統(tǒng)    304
9.4.2  在嵌入式系統(tǒng)中何時需要RTOS    304
9.4.3  RTOS的多任務調(diào)度管理    306
9.4.4  實時系統(tǒng)中通過RTOS進行的多任務調(diào)度    308
9.5  RTOS環(huán)境中的中斷例程:RTOS的中斷源調(diào)用處理    309
9.5.1  通過中斷源直接調(diào)用ISR    310
9.5.2  通過中斷源以及調(diào)度任務的暫時掛起,直接調(diào)用RTOS    311
9.5.3  通過中斷源以及RTOS對任務和ISR的調(diào)度,直接調(diào)用RTOS    311
9.6  RTOS任務調(diào)度模型,作為性能測度的中斷延遲和任務響應時間    311
9.6.1  使用就緒任務循環(huán)隊列的協(xié)作輪轉(zhuǎn)調(diào)度    312
9.6.2  使用按照優(yōu)先級約束排序列表的就緒任務的協(xié)作調(diào)度    313
9.6.3  時間分片的循環(huán)調(diào)度(速率單調(diào)的協(xié)作調(diào)度)    315
9.6.4  調(diào)度程序控制的搶占式調(diào)度模型策略    316
9.6.5  搶占式調(diào)度程序提供的臨界段服務    318
9.6.6  任務的固定(靜態(tài))實時調(diào)度    320
9.6.7  調(diào)度算法中的優(yōu)先級分配    320
9.6.8  使用概率定時Petri網(wǎng)(隨機)和多線程圖(MTG)的高級調(diào)度算法    321
9.7  周期、零散以及非周期任務的調(diào)度模型的性能測度    321
9.7.1  使用CPU負載作為性能尺度    321
9.7.2  零散任務模型    322
9.8  為RTOS的標準化和任務內(nèi)部通信函數(shù)采用的IEEE標準POSIX 1003.1B    322
9.9  搶占式調(diào)度程序的基本操作及其在處理器上預期耗費的時間    324
9.10  用于進程間、ISR間、OS函數(shù)間和任務之間同步及資源管理的15條策略    325
9.11  嵌入式LINUX的內(nèi)部組織:設備驅(qū)動程序和嵌入式系統(tǒng)的LINUX內(nèi)核    326
9.12  操作系統(tǒng)的安全問題    329
9.13  移動式操作系統(tǒng)    330
第10章  實時操作系統(tǒng)編程工具:MicroC/OS-II和VxWorks    334
10.1  測試穩(wěn)定且調(diào)試合格的實時操作系統(tǒng)的必要性    335
10.2  μC/OS-II    337
10.2.1  RTOS系統(tǒng)級函數(shù)    338
10.2.2  任務服務函數(shù)及其使用范例    341
10.2.3  時間延遲函數(shù)    347
10.2.4  函數(shù)相關的存儲器分配    349
10.2.5  信號量相關函數(shù)    351
10.2.6  郵箱相關函數(shù)    363
10.2.7  隊列相關函數(shù)    372
10.3  VxWorks    381
10.3.1  基本特性    382
10.3.2  系統(tǒng)庫頭文件中的任務管理庫    384
10.3.3  VxWorks系統(tǒng)函數(shù)和系統(tǒng)任務    388
10.3.4  進程(任務)間通信函數(shù)    391
第11章  RTOS編程案例研究    405
11.1  使用MUCOS RTOS對巧克力自動售賣機編碼    406
11.1.1  案例定義、多任務及其函數(shù)    406
11.1.2  創(chuàng)建任務、函數(shù)和IPC    408
11.1.3  編碼步驟示例    411
11.2  使用RTOS VxWorks將應用層字節(jié)流發(fā)送到TCP/IP網(wǎng)絡上    420
11.2.1  案例定義、多任務及其函數(shù)    421
11.2.2  創(chuàng)建任務、函數(shù)和IPC    424
11.2.3  編碼步驟示例    425
11.3  汽車自適應巡航控制系統(tǒng)的嵌入式系統(tǒng)    443
11.4  智能卡中的嵌入式系統(tǒng)    456
11.4.1  嵌入式硬件    457
11.4.2  嵌入式軟件    458
第12章  嵌入式系統(tǒng)中的軟硬件協(xié)同設計    472
12.1  嵌入式系統(tǒng)項目管理    473
12.2  系統(tǒng)開發(fā)過程中嵌入式系統(tǒng)設計和協(xié)同設計問題    474
12.2.1  嵌入式系統(tǒng)開發(fā)過程的目標    474
12.2.2  行動計劃    474
12.2.3  完整的規(guī)范和系統(tǒng)需求    475
12.2.4  原理設計    476
12.2.5  軟硬件布局設計    477
12.2.6  詳細設計    478
12.2.7  實現(xiàn)工具    478
12.2.8  測試    479
12.3  嵌入式系統(tǒng)開發(fā)階段中的設計周期    479
12.4  目標系統(tǒng)或其仿真器和內(nèi)置電路仿真器(ICE)    480
12.4.1  使用目標系統(tǒng)    480
12.4.2  仿真器和ICE    481
12.4.3  用于將最終代碼下載到ROM中的設備編程器    483
12.5  嵌入式系統(tǒng)開發(fā)中的軟件工具    483
12.5.1  代碼生成工具(匯編器、編譯器、加載器和鏈接器)    483
12.5.2  模擬器    484
12.5.3  嵌入式系統(tǒng)的原型開發(fā)、測試和調(diào)試工具    486
12.5.4  集成開發(fā)環(huán)境    487
12.5.5  存儲器、處理器敏感程序和設備驅(qū)動程序    489
12.5.6  動態(tài)鏈接庫    489
12.6  示波器和邏輯分析儀在系統(tǒng)硬件測試中的使用    490
12.6.1  邏輯探測器或者LED測試    490
12.6.2  示波器    490
12.6.3  邏輯分析儀    491
12.6.4  位率測量儀    491
12.6.5  用于ROM調(diào)試的系統(tǒng)監(jiān)控代碼    492
12.7  嵌入式系統(tǒng)設計中的問題    492
12.7.1  選擇合適的平臺    492
12.7.2  嵌入式系統(tǒng)處理器的選擇    493
12.7.3  需要考慮的因素和必需的特性    494
12.7.4  軟硬件權衡    495
12.7.5  性能建模    495
12.7.6  性能加速器    496
12.7.7  嵌入式系統(tǒng)中OS的移植問題    496
附錄A  CISC和RISC處理器體系結 構和指令集示例    504
A.1  CISC和RISC處理器的指令及其處理    504
A.1.1  指令和數(shù)據(jù)的格式    504
A.1.2  尋址模式    505
A.1.3  指令集    506
A.1.4  CISC和RISC體系結構    507
A.2  指令集示例——  ARM7    508
A.3  ARM處理器的匯編語言程序示例    510
附錄B  嵌入式系統(tǒng)高性能處理器    511
B.1  ARM處理器示例    511
B.2  高性能處理器示例    514
B.3  加速器    515
附錄C  嵌入式系統(tǒng)8/16/32位微處理器及其體系結構概述    517
C.1  Intel、Motorola和PIC系列微控制器的體系結構概述    517
C.2  Motorola系列CISC和RISC的新一代微控制器    519
附錄D  嵌入式數(shù)字信號處理器    522
D.1  數(shù)字信號處理器的體系結構    522
D.2  DSP處理器和傳統(tǒng)處理器的比較    524
D.3  定點運算和浮點運算的比較    525
D.4  嵌入式系統(tǒng)的DSP    525
D.4.1  TMS320C2000TM平臺    526
D.4.2  TMS320C5000TM平臺    526
D.4.3  TMS320C6000TM平臺    526
D.4.4  DSP的TMS320C24x和C28X代產(chǎn)品    527
D.4.5  TMS320C54x和TMS320C55x代DSP    528
D.4.6  TMS320C62x、64x和C67x代DSP    529
D.4.7  RISC環(huán)境下的OMAP5910嵌入式處理器DSP    530
D.4.8  基于SoC的解決方案Texas DSP TMS320DM310    530
附錄E  嵌入式系統(tǒng)應用的新型處理器    532
附錄F  串行和并行總線    537
F.1  新的串行總線標準(USB 2.0,IEEE 1394)    537
F.2  新的并行總線標準(Compact PCI、PCI-X)    537
附錄G  嵌入式系統(tǒng)中的設備    539
G.1  各種形式的ROM設備    539
G.2  ROM設備編程器    540
G.2.1  二進制映像    540
G.2.2  Motorola S-Record格式    540
G.2.3  Intel Hex-File格式    541
G.2.4  設備編程器的編程方法    542
G.3  RAM設備    544
G.3.1  靜態(tài)和動態(tài)RAM    544
G.3.2  EDO RAM    544
G.3.3  SDRAM    545
G.3.4  RDRAM    545
G.3.5  參數(shù)化的分布式RAM    545
G.3.6  參數(shù)化的塊RAM    545
G.4  微控制器中的并口    545
G.5  串行通信設備    546
G.5.1  Motorola 68HC11中的SPI和SCI    546
G.5.2  微控制器中的串行通信設備    547
G.6  微處理器中的定時器    548
G.7  各種處理器系列中的中斷源及其控制    550
G.8  80x86處理器的中斷    552
G.9  68HC11中的中斷    552
G.9.1  中斷服務    552
G.9.2  中斷源    553
附錄H  嵌入式系統(tǒng)體系結構、編程和設計中的重要內(nèi)容    554
H.1  推薦使用的教學大綱    554
H.2  CDAC嵌入式系統(tǒng)課程教學大綱涉及的內(nèi)容    556

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號