基於Arm Cortex-M處理器的SoC設計指南

《基於Arm Cortex-M處理器的SoC設計指南》是2023年機械工業出版社出版的圖書。

基本介紹

  • 中文名:基於Arm Cortex-M處理器的SoC設計指南
  • 出版時間:2023年12月1日
  • 出版社:機械工業出版社
  • ISBN:9787111738091
內容簡介,圖書目錄,

內容簡介

 ArmCortex-M處理器已成為物聯網和嵌入式應用程式非常受歡迎的選擇。Arm公司通過FlexibleAccess業務和DesignStart項目為開發者提供相關支持,這使得獲取ArmCortex-M處理器的IP產品變得更加快捷、優惠、容易。
  《基於Arm Cortex-M處理器的SoC設計指南》融合Arm嵌入式技術傑出工程師多年實踐經驗,系統講解SoC及FPGA設計者在集成Cortex-M處理器時所要用到的知識,包括匯流排協定、匯流排互連和外設設計等。
  《基於Arm Cortex-M處理器的SoC設計指南》包含的知識點如下:
  ArmCortex-M系列處理器簡介;
  基於Cortex-M處理器的系統設計;
  AMBA、AHB、APB:
  搭建Cortex-M處理器的簡單匯流排系統;
  Cortex-M處理器系統的調試集成;
  低功耗支持;
  匯流排基礎組件設計;
  簡單外設設計;
  核心系統集成;
  處理器的其他相關設計,如時鐘系統設計、多電源域和電源門控設計等;
  軟體開發。

圖書目錄

推薦序
譯者序
前言
作者簡介
第1章 Arm Cortex-M系列處理器簡介1
1.1 Cortex-M系統設計1
1.1.1 輕鬆開始Cortex-M系統設計1
1.1.2 基於FPGA的Cortex-M處理器系統2
1.1.3 Arm處理器架構更易構建安全系統3
1.2 Arm處理器的分類4
1.3 Cortex-M獲取的開發資源7
1.3.1 通過Arm公司Flexible Access業務和DesignStart項目獲取IP授權 7
1.3.2 評估版DesignStart—Verilog代碼不可讀版本9
1.3.3 版DesignStart—Verilog RTL代碼可配置版本10
1.3.4 FPGA版DesignStart—FPGA開發包版本10
1.3.5 文檔10
第2章 基於Cortex-M處理器的系統設計11
2.1 概述11
2.2 存儲器12
2.2.1 存儲器概述12
2.2.2 基於FPGA開發工具
設計Cortex-M處理器
的存儲器13
2.2.3 ASIC設計中的存儲器16
2.2.4 存儲器位元組順序16
2.3 外圍設備的定義17
2.4 存儲器映射的定義18
2.5 匯流排和存儲器系統設計21
2.6 TCM集成21
2.7 高速快取集成22
2.8 處理器的配置選項22
2.9 中斷信號及相關事項22
2.10 事件接口25
2.11 時鐘生成26
2.12 復位生成28
2.13 SysTick定時器30
2.14 調試集成31
2.15 電源管理功能32
2.16 頂層引腳分配和引腳多路復用32
2.17 其他信號33
2.18 簽署要求34
第3章  AMBA、AHB、APB35
3.1 AMBA35
3.1.1 AMBA簡介35
3.1.2 AMBA歷史36
3.1.3 各種版本的AMBA規範36
3.2 AHB概述37
3.2.1 AHB版本37
3.2.2 AHB信號38
3.2.3 AHB基本操作40
3.2.4 小AHB系統42
3.2.5 多匯流排主機的處理44
3.3 AHB詳述46
3.3.1 地址區間信號46
3.3.2 數據區間信號51
3.3.3 遺留仲裁器握手信號56
3.4 獨占訪問操作58
3.4.1 獨占訪問簡介58
3.4.2 AHB5獨占訪問支持61
3.4.3 Cortex-M3/M4/M7處理器
獨占訪問信號到AHB5
的映射62
3.5 AHB5 TrustZone支持63
3.6 APB概述65
3.6.1 APB系統65
3.6.2 APB信號和連線65
3.6.3 APBv2中的附加信號69
3.6.4 APB上的數據71
3.6.5 不同版本APB組件的
組合使用71
第4章 搭建Cortex-M處理器的
 簡單匯流排系統73
4.1 匯流排設計基礎73
4.2 搭建簡單的Cortex-M0系統74
4.3 搭建簡單的Cortex-M0+系統75
4.4 搭建簡單的Cortex-M1系統77
4.5 搭建簡單的Cortex-M3/Cortex-
   M4系統79
4.6 處理多個匯流排主機85
4.7 獨占訪問支持87
4.8 地址重映射89
4.9 基於AHB的存儲器連線
  與TCM90
4.10 嵌入式快閃記憶體的處理92
4.10.1 IP要求92
4.10.2 快閃記憶體編程93
4.10.3 處理器的無程式啟動93
第5章 Cortex-M處理器系統的
 調試集成95
5.1 調試與跟蹤功能概述95
5.2 CoreSight調試架構98
5.2.1 Arm CoreSight簡介98
5.2.2 調試連線協定98
5.2.3 調試連線概念—調試
    訪問連線埠99
5.2.4 調試接口結構101
5.2.5 跟蹤連線102
5.2.6 時間戳104
5.2.7 調試組件發現機制105
5.2.8 調試認證106
5.2.9 調試電源請求107
5.2.10 調試復位請求108
5.2.11 交叉觸發接口109
5.3 調試集成109
5.3.1 JTAG/SWD連線109
5.3.2 跟蹤連線埠連線111
5.3.3 調試和跟蹤系統的時鐘112
5.3.4 多點SWD114
5.3.5 調試認證115
5.4 其他調試相關主題117
5.4.1 其他信號連線117
5.4.2 菊花鏈式JTAG連線117
第6章 低功耗支持118
6.1 Cortex-M處理器低功耗特性118
6.2 低功耗設計基礎119
6.3 Cortex-M處理器低功耗接口121
6.3.1 睡眠狀態和GATEHCLK
輸出121
6.3.2 Cortex-M23/M33/M35P
處理器的Q通道低功耗
接口122
6.3.3 睡眠保持接口124
6.3.4 喚醒中斷控制器126
6.3.5 SRPG對軟體的影響131
6.3.6 軟體低功耗方法131
6.4 體現低功耗設計的Cortex-M
   處理器特性132
6.4.1 高代碼密度132
6.4.2 短流水線模式132
6.4.3 取指最佳化模式133
6.5 系統級設計注意事項134
6.5.1 低功耗設計134
6.5.2 時鐘源134
6.5.3 低功耗存儲器135
6.5.4 快取存儲器135
6.5.5 低功耗模擬單元135
6.5.6 時鐘門控設計135
6.5.7 處理器完全掉電情況下
的睡眠模式136
第7章 匯流排基礎組件設計139
7.1 簡單AMBA匯流排系統設計概述139
7.2 典型AHB從機設計規則141
7.3 典型AHB基礎組件143
7.3.1 AHB解碼器144
7.3.2 默認從機145
7.3.3 AHB從機多路復用器147
7.3.4 帶AHB接口的ROM
和RAM149
7.3.5 AHB to APB匯流排橋158
7.4 從Cortex-M3/Cortex-M4 AHB
  Lite橋接到AHB5169
第8章 簡單外設設計171
8.1 外設系統設計171
8.2 設計簡單的APB外設172
8.2.1 通用輸入輸出接口179
8.2.2  APB定時器186
8.2.3  UART190
8.3 ID暫存器199
8.4 外設設計的其他注意事項201
8.4.1 系統控制功能的安全性201
8.4.2 處理器暫停201
8.4.3 64位數據處理201
第9章 核心系統集成202
9.1 搭建簡單的微控制器系統202
9.2 設計畫分204
9.3 仿真環境的內容204
9.4 仿真用基礎軟體支持庫及
  代碼206
9.4.1 基於CMSIS-CORE的
示例代碼概述206
9.4.2 MCU的設備頭檔案206
9.4.3 MCU的設備啟動檔案209
9.4.4 UART應用程式210
9.4.5 系統初始化函式211
9.4.6 重定位目標212
9.4.7 其他的軟體支持包213
9.5 系統級仿真214
9.5.1 編譯Hello world程式214
9.5.2 使用Modelsim/QuestaSim
對設計進行編譯和仿真215
9.6 處理器系統和Corstone
  基礎IP218
9.7 驗證219
9.8 ASIC實現流程220
9.9 可性設計222
第10章 處理器系統的其他
相關設計226
10.1 時鐘系統設計226
10.1.1 時鐘系統設計概述226
10.1.2 時鐘切換227
10.1.3 低功耗考慮228
10.1.4 DFT考慮229
10.2 多電源域和電源門控229
10.3 混合信號Arm處理器231
10.3.1 微控制器和混合信號
 設計的融合231
10.3.2 模數轉換232
10.3.3 數模轉換237
10.3.4 其他模擬接口239
10.3.5 將ADC和DAC IP
  產品連線到Cortex-M
  系統239
10.4 SoC案例—Beetle
   晶片案例研究240
10.4.1 Beetle晶片概述240
10.4.2 Beetle晶片的
 挑戰性242
10.4.3 Beetle晶片的
  系統設計242
10.4.4 Beetle晶片的
 實現243
10.4.5 其他相關任務243
第11章 軟體開發246
11.1 Cortex微控制器軟體接口
   標準246
11.2 搭建多工具鏈支持的開發
   平台248
11.2.1 準備工作248
11.2.2 使用Arm Compiler 6
 進行編譯249
11.2.3 使用gcc進行編譯250
11.3 Arm Keil微控制器開發套件255
11.3.1 Keil MDK概述255
11.3.2 Keil MDK的安裝256
11.3.3 創建應用程式257
11.3.4 創建工程258
11.3.5 創建和添加源檔案260
11.3.6 編輯源檔案262
11.3.7 配置工程參數選項264
11.3.8 編譯工程267
11.3.9 應用程式的燒錄與
 調試267
11.3.10 使用ITM輸出文本
  訊息269
11.3.11 協同環境下的軟體
  開發274
11.4 使用RTOS274
11.4.1 RTOS軟體概念275
11.4.2 使用Keil RTX275
11.4.3 最佳化記憶體利用率277
11.5 其他工具鏈281
技術術語表282
參考資料290

相關詞條

熱門詞條

聯絡我們