本書共分8章,第1章介紹ARM體系架構,包括ARM架構及處理器的命名規(guī)則、系列分支及ARMv8體系架構基礎知識;第2章介紹基于樹莓派4B的開發(fā)環(huán)境搭建、開發(fā)過程及調試和仿真;第3章介紹ARMv8匯編的基礎知識,包括執(zhí)行機制、指令集等內容;第4章介紹ARM異常與中斷機制,包括ARM異常系統(tǒng)概述、進入和退出異常處理程序和中斷等概念;第5章介紹ARM存儲系統(tǒng),包括內存管理、地址轉換、緩存策略等內容;第6章介紹嵌入式人工智能的發(fā)展、GPU的運行機制及人工智能芯片等相關技術;第7章以昇騰、鯤鵬、Harmony為例,介紹ARM架構產(chǎn)品及其操作系統(tǒng);第8章通過覆銅板表面缺陷檢測系統(tǒng)介紹基于樹莓派4B的綜合案例。
本書注重內容的可讀性、系統(tǒng)性和前瞻性,安排了大量的實驗內容和分析,讓學生能從ARM結構處理器到人工智能芯片有深入的系統(tǒng)的認知,培養(yǎng)學生將所學理論知識轉化為工程實際應用的能力。本書既可作為高等院校相關工科專業(yè)的教材,也可供相關工程技術人員參考。
更多科學出版社服務,請掃碼獲取。
第1章 ARM體系架構
1.1 ARM架構介紹
1.1.1 ARM架構發(fā)展史
1.1.2 ARM規(guī)范
1.2 ARM架構及處理器命名規(guī)則
1.2.1 ARM架構命名規(guī)則
1.2.2 ARM處理器命名規(guī)則
1.3 ARM架構系列分支
1.3.1 A系列
1.3.2 R系列
1.3.3 M系列
1.3.4 SC系列
1.4 ARMv8體系架構基礎知識
1.4.1 硬件資源
1.4.2 執(zhí)行狀態(tài)
1.4.3 異常等級
1.4.4 支持的數(shù)據(jù)類型
1.4.5 寄存器
1.4.6 指令集
1.5 ARM編程語言
習題
參考文獻
第2章 開發(fā)環(huán)境搭建
2.1 樹莓派4B硬件資源
2.1.1 BCM2711處理器
2.1.2 樹莓派的GPIO引腳
2.2 C語言和匯編語言開發(fā)環(huán)境
2.2.1 實驗前準備
2.2.2 串口調試
2.2.3 J-Link仿真器調試
2.2.4 程序編譯流程
2.2.5 J-Link調試案例介紹
2.2.6 程序運行
2.3 Python開發(fā)環(huán)境
2.3.1 安裝Raspberry Pi OS
2.3.2 登錄Raspberry Pi OS
2.3.3 樹莓派Python環(huán)境搭建
習題
參考文獻
第3章 ARMv8匯編概述
3.1 執(zhí)行機制
3.1.1 指令集
3.1.2 尋址模式
3.2 Load/Store指令
3.2.1 指令形式
3.2.2 尋址模式
3.2.3 雙寄存器加載和存儲
3.2.4 使用浮點寄存器加載(存儲)
3.3 數(shù)據(jù)處理指令
3.3.1 數(shù)據(jù)傳送與移位指令
3.3.2 算術與邏輯運算指令
3.3.3 位域操作與擴展指令
3.3.4 浮點指令
3.4 比較和跳轉指令
3.4.1 比較指令
3.4.2 條件選擇指令
3.4.3 跳轉與返回指令
3.5 SIMD和NEON技術
3.6 實驗
3.6.1 排序實驗
3.6.2 RGB數(shù)值轉換實驗
習題
參考文獻
第4章 ARM異常與中斷機制
4.1 ARM異常系統(tǒng)概述
4.1.1 ARM處理的7種工作模式
4.1.2 異常類型
4.1.3 異常向量表
4.1.4 異常優(yōu)先級
4.1.5 異常使用的寄存器
4.2 進入和退出異常處理程序
4.2.1 異常入口與異常返回
4.2.2 對異常中斷的響應過程
4.2.3 從異常中斷處理程序中返回
4.2.4 保護現(xiàn)場與恢復現(xiàn)場
4.3 中斷——異常的一種
4.3.1 中斷概述
4.3.2 中斷引腳
4.3.3 中斷控制器
4.3.4 中斷處理過程
4.3.5 樹莓派4B上的傳統(tǒng)中斷控制器
4.4 異常中斷處理程序
4.4.1 程序中常用的C語言關鍵詞
4.4.2 C語言實現(xiàn)異常中斷處理
4.4.3 異常等級切換
4.4.4 樹莓派4B中定時器的實現(xiàn)
習題
參考文獻
第5章 ARM存儲系統(tǒng)
5.1 內存管理概述
5.1.1 內存管理的發(fā)展
5.1.2 虛擬內存
5.1.3 虛擬內存系統(tǒng)架構
5.1.4 地址轉換
5.2 ARM64內存管理
5.2.1 內存管理體系結構
5.2.2 TLB
5.2.3 頁表
5.2.4 地址轉換過程
5.2.5 內存類型及屬性
5.2.6 內存控制寄存器
5.3 高速緩存
5.3.1 高速緩存基本結構
5.3.2 高速緩存地址映射方式
5.3.3 高速緩存分類
5.3.4 高速緩存策略
5.3.5 高速緩存屬性
5.3.6 高速緩存控制寄存器
5.4 緩存一致性
5.4.1 緩存一致性分類
5.4.2 緩存一致性協(xié)議
5.4.3 存儲一致性
5.5 實驗
5.5.1 恒等映射
5.5.2 高速緩存自舉
習題
參考文獻
第6章 嵌入式人工智能
6.1 人工智能簡述
6.1.1 人工智能的發(fā)展
6.1.2 機器學習
6.1.3 深度學習
6.2 圖形處理器概述
6.2.1 GPU發(fā)展歷程
6.2.2 GPU的功能
6.2.3 GPU的物理架構
6.2.4 GPU的運行機制
6.3 人工智能芯片
6.3.1 人工智能芯片的發(fā)展
6.3.2 FPGA芯片
6.3.3 ASIC芯片
習題
參考文獻
第7章 ARM架構產(chǎn)品及其操作系統(tǒng)
7.1 國外ARM架構產(chǎn)品
7.1.1 Cortex-M55
7.1.2 Ethos-U55
7.2 昇騰
7.2.1 硬件架構概覽
7.2.2 軟件架構概覽
7.2.3 昇騰處理器舉例
7.3 鯤鵬
7.3.1 硬件架構概覽
7.3.2 軟件架構概覽
7.3.3 鯤鵬處理器舉例
7.4 Harmony操作系統(tǒng)
7.4.1 系統(tǒng)定義
7.4.2 系統(tǒng)架構
7.4.3 技術特性
7.4.4 OpenHarmony與其他操作系統(tǒng)的對比
習題
參考文獻
第8章 基于樹莓派4B的綜合案例
8.1 覆銅板表面缺陷檢測系統(tǒng)
8.2 缺陷分類方法
8.2.1 數(shù)據(jù)預處理
8.2.2 模型訓練與評估
8.2.3 模型速度優(yōu)化
8.3 基于樹莓派4B的深度學習圖像分類系統(tǒng)
8.3.1 樹莓派環(huán)境安裝
8.3.2 樹莓派圖像分類系統(tǒng)設計
8.3.3 多樹莓派分布式分類系統(tǒng)
8.3.4 系統(tǒng)性能測試
習題
參考文獻