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