硬體固件接口設計:提高嵌入式系統開發效率的最佳實踐

硬體固件接口設計:提高嵌入式系統開發效率的最佳實踐

《硬體固件接口設計:提高嵌入式系統開發效率的最佳實踐》一書的出版社是清華大學出版社,出版時間是2011年11月1日。

基本信息

內容簡介

《硬體/固件接口設計:提高嵌入式系統開發效率的最佳實踐》的主要特色是包含300多個最佳實踐,可為開發過程及設計的各個方面提供詳細的指導。這些最佳實踐的套用效果極佳,但是它們只適用於特定的情況。應當根據實際情況詳細地對照檢查它們。全書處處強調讓工程師形成他們自己的最佳實踐集。儘管工程師是以這300多個最佳實踐作為起點的,但是應當

硬體固件接口設計:提高嵌入式系統開發效率的最佳實踐
以此為基礎不斷發展,逐漸形成他們自己的最佳實踐集,因為這樣做可以增加其所在組織的項目獲得成功的幾率。

為了幫助工程師理解這300多個最佳實踐,同時為了幫助他們創建自己的最佳實踐集,《硬體/固件接口設計:提高嵌入式系統開發效率的最佳實踐》列出了七項原則作為綱領性指導。即使在某些情況下沒有特別合適的最佳實踐,這些原則也能幫助工程師遵循正確的方向工作。依靠這七項原則和300多個最佳實踐,將提高設計小組成功生產嵌入式系統產品的能力。

作者簡介

作者:(美國)斯特林漢姆(Gary Stringham) 譯者:張鼎 賀小川

目錄

第1章 引言

1.1 硬體/固件接口

1.1.1 硬體、晶片及組件

1.1.2 固件和設備驅動程式

1.2 最佳實踐

1.2.1 原則

1.2.2 原則和實踐帶來的好處

1.3 “一次成功”還意味著……

1.3.1 更易於編程

1.3.2 更易於調試

1.3.3 更易於變通地解決缺陷

1.4 目標讀者

1.4.1 硬體工程師

1.4.2固件工程

1.4.3 本書在大學環境中的套用

1.5 項目的生命周期

1.6 案例研究

1.6.1 Unity ASIC中的單色視頻組件

1.6.2 優秀示例的案例研究

1.7 小結

1.8 參考文獻

第2章 原則

2.1 硬體/固件接口設計的七項原則

2.1.1 協同設計

2.1.2 確定並遵循標準

2.1.3 均衡負載

2.1.4 設計要考慮兼容性

2.1.5 預測影響

2.1.6 設計要考慮意外

2.1.7 事先計畫

2.2 小結

第3章 合作

3.1 第一步

3.1.1 角色

3.1.2 啟動會議

3.2 正式合作

3.2.1 例會

3.2.2 初期的固件支持

3.2.3 聯合開發技巧

3.2.4 後期的硬體支持

3.2.5 文檔

3.3 非正式合作

3.3.1 正式的組織結構

3.3.2 硬體工程師的主動性

3.3.3 固件工程師的主動性

3.3.4 合作解決問題

3.4 小結

3.5 參考文獻

第4章 計畫

4.1 行業標準

4.1.1 既有標準

4.1.2 實現標準

4.1.3 標準的擴展與創建

4.2 通用版本

4.3 兼容性

4.3.1 向後及向前兼容的範圍

4.3.2 新舊版本的組合

4.4 缺陷

4.4.1 歸檔缺陷

4.4.2 修復缺陷

4.4.3 查找缺陷的測試計畫

4.5 分析

4.5.1 共用引腳

4.5.2 緩衝區管理

4.5.3 硬體/固件互動

4.5.4 分析第三方的IP

4.6 事後檢查

4.7 小結

第5章 文檔

5.1 類型

5.1.1 文檔的級別和類型

5.1.2 晶片級文檔與組件級文檔

5.1.3 支持與不支持文檔

5.2 文檔管理

5.2.1 文檔標準

5.2.2 何時編寫文檔

5.2.3 準確性

5.3 審閱

5.3.1 何時審閱

5.3.2 跟蹤文檔變化

5.3.3 固件工程師應承擔的審閱責任

5.4 內容

5.4.1 大體內容

5.4.2 模板文檔示例

5.4.3 歷史

5.4.4 功能與假設

5.4.5 參考和教程

5.4.6 術語表和勘誤表

5.5 暫存器

5.5.1 暫存器文檔

5.5.2 暫存器設計工具

5.5.3 暫存器表

5.5.4 暫存器的細節和描述

5.6 數據位

5.6.1 暫存器映射格式

5.6.2 數據位的位置、類型及默認值

5.6.3 數據位的描述

5.6.4 中止的影響

5.6.5 測試及調試數據位

5.7 中斷

5.7.1 邊沿觸髮型中斷和電平觸髮型中斷

5.7.2 中斷的使能與應答

5.7.3 中斷尚未完全完成

5.7.4 無介入的重複中斷

5.8 時間

5.8.1 時間範圍

5.8.2 時間單位

5.9 錯誤

5.9.1 兩種類型的錯誤

5.9.2 有關錯誤的豐富信息

5.9.3 發生錯誤後組件的狀態

5.9.4 固件恢復的步驟

5.10 信息

5.10.1 非法配置

5.10.2 狀態機

5.10.3 如何中止

5.11 小結

第6章 超級組件

6.1 超級組件的優點

6.1.1 組件的附屬資源

6.1.2 包含未使用邏輯的理由

6.1.3 反對包含未使用邏輯的理由

6.2 聯合

6.2.1 設計超級組件

6.2.2 製作超級模組

6.2.3 改進設計

6.2.4 添加未來的功能

6.2.5 超級組件的版本號

6.3 I/O信號

6.4 參數化

6.4.1 減少矽片空間

6.4.2 參數化風險的最小化

6.4.3 固件的參數化信息

6.4.4 可選的與固定的暫存器及數據位

6.5 小結

6.6 參考文獻

第7章 設計

7.1 事件通知

7.1.1 無指示

7.1.2 延時

7.1.3 狀態位

7.1.4 中斷

7.2 性能

7.2.1 增大緩衝區

7.2.2 提前工作

7.2.3 調整

7.2.4 裕度

7.3 上電

7.3.1 上電時的互動

7.3.2 I/O線路的上電狀態

7.3.3 組件級的電源控制

7.4 通信與控制

7.4.1 錯誤信息

7.4.2 DMA功能

7.4.3 I/O引腳共享

7.4.4 隱藏實現細節

7.5 小結

第8章 暫存器

8.1 定址

8.1.1 處理器訪問

8.1.2 晶片的基址

8.1.3 組件的偏移量和基址

8.1.4 暫存器的偏移量

8.1.5 子組件

8.1.6 迸發

8.1.7 未使用的地址單元

8.1.8 下一代晶片的變化

8.2 位分配

8.2.1 分配數據位的位置

8.2.2 多位欄位

8.2.3 多暫存器欄位

8.2.4 未使用的數據位單元

8.2.5 下一版本的變化

8.2.6 數據位類型

8.2.7 暫存器中的數據位類型

8.2.8 根據操作模式編組

8.2.9 組件的多次例化

8.3 數據類型

8.3.1 整數

8.3.2 實數

8.3.3 指針

8.3.4 常數

8.4 硬體標識

8.4.1 晶片ID和版本

8.4.2 組件ID和版本

8.5 通信與控制

8.5.1 必要的信息

8.5.2 組件中的排隊任務

8.5.3 一致的暫存器內容

8.5.4 訪問原子暫存器

8.6 小結

第9章 中斷

9.1 設計

9.1.1 中斷超級模組

9.1.2 分級的中斷結構

9.1.3 中斷共享

9.1.4 中斷源信號的完整性

9.1.5 中斷觸發的類型

9.2待決暫存器

9.2.1 應答中斷

9.2.2 中斷位置的次序

9.3 使能暫存器

9.3.1 1使能中斷

9.3.2 使能控制中斷

9.3.3 使能的默認設定

9.4 可選的暫存器

9.4.1 中斷源狀態暫存器

9.4.2 搶占暫存器

9.4.3 原子使能暫存器/原子關閉暫存器

9.4.4 禁止暫存器

9.4.5 例化暫存器

9.4.6 可選暫存器的地址

9.5 中斷模組回顧

9.5.1 中斷通道

9.5.2 中斷模組

9.5.3 外部連線

9.6 雙邊沿觸發

9.6.1 利用兩個中斷通道

9.6.2 頭邊沿和尾邊沿中斷的通道位置

9.7 使用中斷模組

9.7.1 何時分配中斷通道

9.7.2 重複中斷

9.7.3地址映射

9.8 小結

第10章 中止等

10.1 定義

10.2 停止

10.3 復位

10.4 中止

10.4.1 中止的必要性

10.4.2 固件與中止的互動

10.4.3 中止的行為

10.4.4 中止組件間的互動

10.5 小結

第11章 鉤子

11.1 針對鉤子的設計

11.1.1 增加哪些鉤子

11.1.2 增加暫存器

11.1.3 查找潛在問題區域

11.1.4 刪除變通措施

11.2 查看

11.2.1 內部暫存器

11.2.2 信號

11.2.3 存儲器

11.2.4 狀態機

11.3 打探

11.3.1 破壞性的讀寫

11.3.2 輸入和輸出信號

11.3.3 重寫暫存器

11.4 監視

11.4.1 事件跟蹤

11.4.2 定時器

11.4.3 數據觀察

11.5 其他鉤子

11.5.1 旁路

11.5.2 測試和調試所需的附加資源

11.5.3 專用處理器

11.6 小結

第12章 結束語

12.1 要點

12.2 受益

12.3 硬體/固件接口設計的七項原則

12.4 產品終於可以運轉了!

開始發貨吧!

附錄A 最佳實踐

附錄B 電動車控制器的規範

附錄C 將本書作為大學教材

附錄D 術語表

相關搜尋

熱門詞條

聯絡我們