以電腦為組件:嵌入式計算系統設計原理 (Computers as Components: Principles of Embedded Computing System Design)

蕭榮修

  • 出版商: 全華圖書
  • 出版日期: 2005-01-03
  • 定價: $650
  • 售價: 9.0$585
  • 語言: 繁體中文
  • ISBN: 9572146904
  • ISBN-13: 9789572146903
  • 相關分類: 嵌入式系統

無法訂購

買這商品的人也買了...

相關主題

商品描述

內容簡介:

本書主要介紹嵌入式計算系統設計原理,使學生瞭解如何使用計算機軟、硬體為元件來設計嵌入式計算系統。內容包含嵌入式計算系統簡介、指令集、CPU、嵌入式計算平台、程式設計與分析、行程與作業系統、硬體加速器、網路及系統設計方法等,而最主要包括目前最常用的嵌入式處理器 ARM與SHARC DSP的介紹,還有論述相關的作業系統與軟體研發。本書適合大學、科大電子、電機系『嵌入式系統』及『嵌入式計算系統』課程使用。
 

 

目 錄:

第1章 嵌入式計算
1.1 前 言1-1
1.2 複雜的系統和微處理器1-2
1.2.1 嵌入式計算機1-2
1.2.2 嵌入式計算應用的特點1-5
1.2.3 為什麼要使用微處理器1-6
1.2.4 嵌入式計算系統設計所面臨的挑戰1-8
1.3 嵌入式系統的設計程序1-9
1.3.1 需求分析1-11
1.3.2 規格說明1-16
1.3.3 結構設計1-17
1.3.4 設計硬體組件和軟體組件1-19
1.3.5 系統整合1-19
1.4 系統設計正規化1-20
1.4.1 結構化的描述1-21
1.4.2 行為的描述1-27
1.5 模型火車控制器1-30
1.5.1 需 求1-31
1.5.2 概念性的規格說明1-32
1.5.3 詳細的規格說明1-36
1.5.4 本節所學的內容1-43
1.6 本書導讀1-43
1.6.1 第2章:指令集1-44
1.6.2 第3章:CPUs1-44
1.6.3 第4章:嵌入式計算平台1-45
1.6.4 第5章:程式設計和分析1-45
1.6.5 第6章:行程和作業系統1-46
1.6.6 第7章:硬體加速器1-47
1.6.7 第8章:網路1-48
1.6.8 第9章:系統設計技術1-48
1.7 結 論1-49

第2章 指令集
2.1 前 言2-1
2.2 先備知識2-2
2.2.1 計算機結構分類2-2
2.2.2 組合語言2-4
2.3 ARM處理器2-6
2.3.1 處理器和記憶體組織2-6
2.3.2 資料運算2-7
2.3.3 流程控制2-16
2.4 SHARC處理器2-25
2.4.1 記憶體組織2-26
2.4.2 資料運算2-26
2.4.3 流程控制2-35
2.4.4 指令的平行性2-41
2.5 結 論2-42

第3章 CPUs
3.1 簡 介3-1
3.2 輸入輸出程式設計3-2
3.2.1 輸入輸出裝置3-2
3.2.2 輸入輸出基本操作3-4
3.2.3 忙碌-等待I/O3-5
3.2.4 中 斷3-7
3.3 監督模式、異常和陷阱3-23
3.3.1 監督模式3-23
3.3.2 異 常3-24
3.3.3 陷 阱3-24
3.4 協同處理器3-25
3.5 記憶體系統機制3-25
3.5.1 快取記憶體3-26
3.5.2 記憶體管理單元和位址轉換3-34
3.6 CPU的效能3-39
3.6.1 管線技術3-39
3.6.2 超純量執行3-44
3.6.3 快取記憶體3-46
3.7 CPU功率消耗3-46
3.8 設計實例:資料壓縮器3-52
3.8.1 需求和演算法3-52
3.8.2 規格說明3-54
3.8.3 程式設計3-57
3.8.4 測 試3-64
3.9 結 論3-65

第4章 嵌入式計算平台
4.1 前 言4-1
4.2 CPU匯流排4-2
4.2.1 匯流排協定4-2
4.2.2 DMA4-9
4.2.3 系統匯流排組態4-12
4.2.4 ARM匯流排4-13
4.2.5 SHARC匯流排4-14
4.3 記憶體裝置4-16
4.3.1 記憶體裝置組織4-16
4.3.2 隨機存取記憶體4-17
4.3.3 僅讀記憶體4-23
4.4 I/O裝置4-24
4.4.1 定時器和計數器4-24
4.4.2 A/D和D/A轉換器4-25
4.4.3 鍵 盤4-26
4.4.4 發光二極體4-27
4.4.5 顯示器4-28
4.4.6 觸控螢幕4-30
4.5 組件介面4-30
4.5.1 記憶體介面4-31
4.5.2 裝置介面4-32
4.6 用微處理器設計4-34
4.6.1 系統結構4-34
4.6.2 硬體設計4-35
4.6.3 PC作為平台4-37
4.7 開發與除錯4-41
4.7.1 開發環境4-41
4.7.2 偵錯方法4-42
4.7.3 偵錯難題4-47
4.8 製造測試4-48
4.9 設計實例:鬧 鐘4-53
4.9.1 需 求4-53
4.9.2 規格說明4-54
4.9.3 系統結構4-58
4.9.4 組件設計與測試4-59
4.9.5 系統整合與測試4-60
4.10 結 論4-60

第5章 程式設計與分析
5.1 前 言5-1
5.2 程式設計5-2
5.2.1 設計樣式5-2
5.2.2 嵌入式系統設計樣式5-4
5.3 程式設計模型5-7
5.3.1 資料流圖5-8
5.3.2 控制/資料流圖5-10
5.4 組譯和連結5-13
5.4.1 組譯器5-14
5.4.2 連 結5-18
5.5 基本的編譯方法5-19
5.5.1 敘述翻譯5-21
5.5.2 程 序5-26
5.5.3 資料結構5-27
5.5.4 運算式簡化5-29
5.5.5 無效程式碼清除5-30
5.5.6 行內展開5-30
5.5.7 迴圈轉換5-31
5.5.8 暫存器配置5-33
5.5.9 排 程5-38
5.5.10指令選擇5-40
5.5.11瞭解並使用你的編譯器5-41
5.5.12直譯器與JIT編譯器5-42
5.6 執行時間的分析與最佳化5-43
5.6.1 程式效能的要素5-44
5.6.2 軌跡驅動的效能分析5-48
5.6.3 執行速度的最佳化5-56
5.7 能量和功率的分析和最佳化5-57
5.7.1 程式能量消耗問題與最佳化5-58
5.8 程式大小的分析及最佳化5-61
5.9 程式確認和測試5-64
5.9.1 透明箱測試5-64
5.9.2 黑箱測試5-72
5.9.3 評量功能測試5-73
5.9.4 效能測試5-74
5.10 設計實例:軟體調變解調器5-75
5.10.1 工作原理和需求5-75
5.10.2 規格說明5-78
5.10.3 系統結構5-78
5.10.4 元件設計和測試5-79
5.10.5 系統整合和測試5-79
5.11 結 論5-79

第6章 行程和作業系統
6.1 前 言6-1
6.2 多工和多行程6-2
6.2.1 多速率系統6-4
6.2.2 早期的多工技術:協同常式6-6
6.3 行 程6-7
6.4 本文切換6-10
6.4.1 協同多工6-11
6.4.2 搶先式多工6-15
6.4.3 行程和物件導向設計6-16
6.5 作業系統6-17
6.5.1 行程狀態和排程6-17
6.5.2 作業系統結構6-19
6.5.3 行程的時序需求6-21
6.5.4 行程間通信6-24
6.5.5 作業系統的其他功能6-29
6.6 排程策略6-29
6.6.1 單調速率排程6-30
6.6.2 截止期限最早者優先排程6-35
6.6.3 RMS對EDF6-40
6.6.4 對建模假設的仔細分析6-40
6.6.5 其他的POSIX排程策略6-44
6.7 行程間通信機制6-44
6.7.1 信 號6-44
6.7.2 UML的信號6-46
6.7.3 共用的記憶體通信6-47
6.7.4 以訊息為基礎的通信6-49
6.8 評估作業系統的效能6-50
6.9 行程的功率最佳化策略6-53
6.10 設計實例:電話答錄機6-57
6.10.1 工作原理和需求6-57
6.10.2 規格說明6-60
6.10.3 系統結構6-63
6.10.4 組件設計和測試6-64
6.10.5 系統整合和測試6-64
6.11 結 論6-64

第7章 硬體加速器
7.1 前 言7-1
7.2 CPU和加速器7-2
7.2.1 為什麼要使用加速器7-3
7.2.2 加速器的設計7-5
7.3 加速系統的設計7-5
7.3.1 效能分析7-5
7.3.2 系統結構框架7-10
7.3.3 分 割7-13
7.3.4 排程和配置7-14
7.3.5 系統整合和除錯7-17
7.4 設計實例:視頻加速器7-18
7.4.1 演算法和需求7-18
7.4.2 規格說明7-21
7.4.3 結 構7-22
7.4.4 組件設計7-24
7.4.5 系統測試7-25
7.5 結 論7-25

第8章 網 路
8.1 前 言8-1
8.2 分散式的嵌入結構8-2
8.2.1 為什麼使用分散式的?8-3
8.2.2 網路抽象概念8-4
8.2.3 硬體和軟體結構8-5
8.2.4 訊息傳遞規劃8-8
8.3 嵌入式系統網路8-10
8.3.1 I2C匯流排8-11
8.3.2 CAN匯流排8-16
8.3.3 SHARC連接埠8-19
8.3.4 乙太網路8-21
8.3.5 Myrinet8-23
8.3.6 網際網路8-24
8.4 以網路為基礎的設計8-26
8.4.1 通信分析8-27
8.4.2 系統效能分析8-31
8.4.3 硬體平台設計、配置和排程8-33
8.5 可連線上網的系統8-35
8.6 設計實例:電梯控制器8-37
8.6.1 工作原理和需求8-37
8.6.2 規格說明8-39
8.6.3 結 構8-41
8.6.4 測 試8-42
8.7 結 論8-42

第9章 系統設計方法
9.1 簡 介9-1
9.2 設計方法論9-2
9.2.1 為什麼研究設計方法論9-2
9.2.2 設計流程9-4
9.3 需求分析9-10
9.4 規格說明9-12
9.4.1 控制導向的規格說明語言9-12
9.4.2 高級的規格說明9-15
9.5 系統分析和結構設計9-18
9.5.1 CRC卡9-18
9.6 品質保證9-22
9.6.1 品質保證技術9-25
9.6.2 驗證規格說明9-27
9.6.3 設計複審9-29
9.6.4 量測驅動的品質保證9-31
9.7 設計實例:電話PBX9-35
9.7.1 工作原理9-36
9.7.2 系統結構9-38
9.8 設計實例:噴墨印表機9-40
9.8.1 硬體設計9-42
9.8.2 軟體設計9-47
9.9 設計實例:個人數位助理9-48
9.10 設計實例:機上盒 (Set-Top Boxes)9-51
9.11 系統晶片9-55
9.12 結 論9-56
附A
  UML表示法
A.1 簡 介A-1
A.2 基本元件A-1
A.3 圖形種類A-2
A.3.1 類別圖A3
A.3.2 狀態圖A-4
A.3.3 循序圖與協同圖A-4
附B
  硬體設計的要點
B.1 簡 介B-1
B.2 組合邏輯B-1
B.3 循序邏輯B-6
B.3.1 記憶體元件B-6
B.3.2 同步機器B-7
B.3.3 非同步機器B-9
B.4 實作方法B-11
術 語
參考文獻