內容簡介
本書以Xilinx公司的XC7Z020 Zynq-7000 SoC器件和Xilinx新的Vivado 2015.4集成開發環境為平颱,全麵係統的介紹瞭嵌入式係統設計的完整設計流程。作者以本書為核心,構建瞭由公開視頻教學資源、設計案例代碼、教學課件、QQ交流群等學習資源,以方便廣大讀者與作者交流互動。
圖書目錄
第1章Zynq-7000 SoC設計導論
1.1全可編程片上係統基礎知識
1.1.1全可編程片上係統的演進
1.1.2SoC與MCU和CPU的比較
1.1.3全可編程SoC誕生的背景
1.1.4可編程SoC係統技術特點
1.1.5全可編程片上係統中的處理器類型
1.2Zynq-7000 SoC功能和結構
1.2.1Zynq-7000 SoC産品分類及資源
1.2.2Xilinx Zynq-7000 SoC功能
1.2.3Zynq-7000 SoC處理係統PS的構成
1.2.4Zynq-7000 SoC可編程邏輯PL的構成
1.2.5Zynq-7000 SoC內的互聯結構
1.2.6Zynq-7000 SoC的供電引腳
1.2.7Zynq-7000 SoC內MIO到EMIO的連接
1.2.8Zynq-7000 SoC內為PL分配的信號
1.3Zynq-7000 SoC在嵌入式係統中的優勢
1.3.1使用PL實現軟件算法
1.3.2降低功耗
1.3.3實時減負
1.3.4可重配置計算
1.4Zynq-7000 SoC的Vivado設計流程
1.4.1Vivado的IP設計和係統級設計集成
1.4.2使用RTL或網錶的設計流程
1.4.3IP子係統設計
1.4.4嵌入式處理器硬件設計
1.4.5使用模型和綜閤的DSP設計
1.4.6脫離上下文的設計流程
1.4.7I/O引腳規劃和布局
1.4.8設計分析和驗證
1.4.9器件編程和硬件驗證
1.4.10部分可重配置
第2章AMBA協議規範
2.1AMBA規範概述
2.2AMBA APB規範
2.2.1AMBA APB寫傳輸
2.2.2AMBA APB讀傳輸
2.2.3AMBA APB錯誤響應
2.2.4操作狀態
2.2.5AMBA3 APB信號
2.3AMBA AHB規範
2.3.1AMBA AHB結構
2.3.2AMBA AHB操作
2.3.3AMBA AHB傳輸類型
2.3.4AMBA AHB猝發操作
2.3.5AMBA AHB傳輸控製信號
2.3.6AMBA AHB地址譯碼
2.3.7AMBA AHB從設備傳輸響應
2.3.8AMBA AHB數據總綫
2.3.9AMBA AHB傳輸仲裁
2.3.10AMBA AHB分割傳輸
2.3.11AMBA AHB復位
2.3.12關於AHB數據總綫的位寬
2.3.13AMBA AHB接口設備
2.4AMBA AXI4規範
2.4.1AMBA AXI4概述
2.4.2AMBA AXI4功能
2.4.3AMBA AXI4互聯結構
2.4.4AXI4-Lite功能
2.4.5AXI4-Stream功能
第3章Zynq-7000係統公共資源及特性
3.1時鍾子係統
3.1.1時鍾係統架構
3.1.2CPU時鍾域
3.1.3時鍾編程實例
3.1.4時鍾係統內生成電路結構
3.2復位子係統
3.2.1復位係統結構和層次
3.2.2復位流程
3.2.3復位的結果
第4章Zynq調試和測試子係統
4.1JTAG和DAP子係統
4.1.1JTAG和DAP係統功能
4.1.2JTAG和DAP係統I/O信號
4.1.3編程模型
4.1.4ARM DAP控製器
4.1.5跟蹤端口接口單元TPIU
4.1.6Xilinx TAP控製器
4.2CoreSight係統結構及功能
4.2.1CoreSight結構概述
4.2.2CoreSight係統功能
第5章Cortex-A9處理器及指令集
5.1應用處理單元概述
5.1.1基本功能
5.1.2係統級視圖
5.2ARM處理器架構發展
5.3Cortex-A9**處理器結構
5.3.1處理器模式
5.3.2寄存器
5.3.3流水綫
5.3.4分支預測
5.3.5指令和數據對齊
5.3.6跟蹤和調試
5.4Cortex-A9處理器指令集
5.4.1指令集基礎
5.4.2數據處理操作
5.4.3存儲器指令
5.4.4分支
5.4.5飽和算術
5.4.6雜項指令
第6章Cortex-A9片上存儲器係統結構和功能
6.1L1高速緩存
6.1.1高速緩存背景
6.1.2高速緩存的優勢和問題
6.1.3存儲器層次
6.1.4高速緩存結構
6.1.5緩存策略
6.1.6寫和取緩衝區
6.1.7緩存性能和命中速度
6.1.8無效和清除緩存
6.1.9一緻性和統一性點
6.1.10Zynq-7000中Cortex-A9 L1高速緩存的特性
6.2存儲器順序
6.2.1普通、設備和強順序存儲器模型
6.2.2存儲器屬性
6.2.3存儲器屏障
6.3存儲器管理單元
6.3.1MMU功能描述
6.3.2虛擬存儲器
6.3.3轉換錶
6.3.4頁錶入口域的描述
6.3.5TLB構成
6.3.6存儲器訪問順序
6.4偵聽控製單元
6.4.1地址過濾
6.4.2SCU主設備端口
6.5L2高速緩存
6.5.1互斥 L2-L1高速緩存配置
6.5.2高速緩存替換策略
6.5.3高速緩存鎖定
6.5.4使能/禁止 L2高速緩存控製器
6.5.5RAM訪問延遲控製
6.5.6保存緩衝區操作
6.5.7在Cortex-A9和L2控製器之間的優化
6.5.8預取操作
6.5.9編程模型
6.6片上存儲器
6.6.1片上存儲器概述
6.6.2片上存儲器功能
6.7係統地址分配
6.7.1地址映射
6.7.2係統總綫主設備
6.7.3I/O外設
6.7.4SMC存儲器
6.7.5SLCR寄存器
6.7.6雜項PS寄存器
6.7.7CPU私有總綫寄存器
第7章Zynq-7000 SoC的Vivado基本設計流程
7.1創建新的工程
7.2使用IP集成器創建處理器係統
7.3生成頂層HDL並導齣設計到SDK
7.4創建應用測試程序
7.5設計驗證
7.5.1驗證前的硬件平颱準備
7.5.2設計驗證的具體實現
7.6SDK調試工具的使用
7.6.1打開前麵的設計工程
7.6.2導入工程到SDK
7.6.3建立新的存儲器測試工程
7.6.4運行存儲器測試工程
7.6.5調試存儲器測試工程
7.7SDK性能分析工具
第8章ARM GPIO的原理和控製實現
8.1GPIO模塊原理
8.1.1GPIO接口及功能
8.1.2GPIO編程流程
8.1.3I/O接口
8.1.4部分寄存器說明
8.1.5底層讀/寫函數說明
8.1.6GPIO的API函數說明
8.2Vivado環境下MIO讀/寫控製的實現
8.2.1調用底層讀/寫函數編寫GPIO應用程序
8.2.2調用API函數編寫控製GPIO應用程序
8.3Vivado環境下EMIO讀/寫控製的實現
8.3.1調用底層讀/寫函數編寫GPIO應用程序
8.3.2調用API函數編寫控製GPIO應用程序
第9章Cortex-A9異常與中斷原理及實現
9.1異常原理
9.1.1異常類型
9.1.2異常處理
9.1.3其他異常句柄
9.1.4Linux異常程序流
9.2中斷原理
9.2.1外部中斷請求
9.2.2Zynq-7000 SoC內的中斷環境
9.2.3中斷控製器的功能
9.3Vivado環境下中斷係統的實現
9.3.1Cortex-A9處理器中斷及異常初始化流程
9.3.2Cortex-A9 GPIO控製器初始化流程
9.3.3導齣硬件設計到SDK
9.3.4創建新的應用工程
9.3.5運行應用工程
第10章Cortex-A9定時器原理及實現
10.1定時器係統架構
10.1.1CPU私有定時器和看門狗定時器
10.1.2全局定時器/計數器
10.1.3係統看門狗定時器
10.1.4三重定時器/計數器
10.1.5I/O信號
10.2Vivado環境下定時器的控製實現
10.2.1打開前麵的設計工程
10.2.2創建SDK軟件工程
10.2.3運行軟件應用工程
第11章Cortex-A9 DMA控製器原理及實現
11.1DMA控製器架構
11.2DMA控製器功能
11.2.1考慮AXI交易的因素
11.2.2DMA管理器
11.2.3多通道數據FIFO(MFIFO)
11.2.4存儲器—存儲器交易
11.2.5PL外設AXI交易
11.2.6PL外設請求接口
11.2.7PL外設長度管理
11.2.8DMAC長度管理
11.2.9事件和中斷
11.2.10異常終止
11.2.11安全性
11.2.12IP配置選項
11.3DMA控製器編程指南
11.3.1啓動控製器
11.3.2執行DMA傳輸
11.3.3中斷服務例程
11.3.4寄存器描述
11.4DMA引擎編程指南
11.4.1寫微碼編程用於AXI交易的CCRx
11.4.2存儲器到存儲器傳輸
11.4.3PL外設DMA傳輸長度管理
11.4.4使用一個事件重新啓動DMA通道
11.4.5中斷一個處理器
11.4.6指令集參考
11.5編程限製
11.6係統功能之控製器復位配置
11.7I/O接口
11.7.1AXI主接口
11.7.2外設請求接口
11.8Vivado環境下DMA傳輸的實現
11.8.1DMA控製器初始化流程
11.8.2中斷控製器初始化流程
11.8.3中斷服務句柄處理流程
11.8.4導齣硬件設計到SDK
11.8.5創建新的應用工程
11.8.6運行軟件應用工程
第12章Cortex-A9安全性擴展
12.1TrustZone硬件架構
12.1.1多核係統的安全性擴展
12.1.2普通世界和安***的交互
12.2Zynq-7000 APU內的TrustZone
12.2.1CPU安全過渡
12.2.2CP15寄存器訪問控製
12.2.3MMU安全性
12.2.4L1緩存安全性
12.2.5安全異常控製
12.2.6CPU調試 TrustZone訪問控製
12.2.7SCU寄存器訪問控製
12.2.8L2緩存中的TrustZone支持
第13章Cortex-A9 NEON原理及實現
13.1SIMD
13.2NEON架構
13.2.1與VFP的共性
13.2.2數據類型
13.2.3NEON寄存器
13.2.4NEON指令集
13.3NEON C編譯器和匯編器
13.3.1嚮量化
13.3.2檢測NEON
13.4NEON優化庫
13.5SDK工具提供的優化選項
13.6使用NEON內聯函數
13.6.1NEON數據類型
13.6.2NEON內聯函數
13.7優化NEON匯編器代碼
13.8提高存儲器訪問效率
13.9自動嚮量化實現
13.9.1導齣硬件設計到SDK
13.9.2創建新的應用工程
13.9.3運行軟件應用工程
13.10NEON匯編代碼實現
13.10.1導齣硬件設計到SDK
13.10.2創建新的應用工程
13.10.3運行軟件應用工程
第14章Cortex-A9外設模塊結構及功能
14.1DDR存儲器控製器
14.1.1DDR存儲器控製器接口及功能
14.1.2AXI存儲器端口接口
14.1.3DDR核和交易調度器
14.1.4DDRC仲裁
14.1.5DDR控製器PHY
14.1.6DDR初始化和標定
14.1.7糾錯碼
14.2靜態存儲器控製器
14.2.1靜態存儲器控製器接口及功能
14.2.2靜態存儲器控製器和存儲器的信號連接
14.3四-SPI Flash控製器
14.3.1四-SPI Flash控製器功能
14.3.2四-SPI Flash控製器反饋時鍾
14.3.3四-SPI Flash控製器接口
14.4SD/SDIO外設控製器
14.4.1SD/SDIO控製器功能
14.4.2SD/SDIO控製器傳輸協議
14.4.3SD/SDIO控製器接口信號連接
14.5USB主機、設備和OTG控製器
14.5.1USB控製器接口及功能
14.5.2USB主機操作模式
14.5.3USB設備操作模式
14.5.4USB OTG操作模式
14.6吉比特以太網控製器
14.6.1吉比特以太網控製器接口及功能
14.6.2吉比特以太網控製器接口編程嚮導
14.6.3吉比特以太網控製器接口信號連接
14.7SPI控製器
14.7.1SPI控製器的接口及功能
14.7.2SPI控製器時鍾設置規則
14.8CAN控製器
14.8.1CAN控製器接口及功能
14.8.2CAN控製器操作模式
14.8.3CAN控製器消息保存
14.8.4CAN控製器接收過濾器
14.8.5CAN控製器編程模型
14.9UART控製器
14.9.1UART控製器接口及功能
14.10I2C控製器
14.10.1I2C速度控製邏輯
14.10.2I2C控製器的功能和工作模式
14.11ADC轉換器接口
14.11.1ADC轉換器接口及功能
14.11.2ADC命令格式
14.11.3供電傳感器報警
14.12PCI-E接口
第15章Zynq-7000內的可編程邏輯資源
15.1可編程邏輯資源概述
15.2可編程邏輯資源功能
15.2.1CLB、Slice和LUT
15.2.2時鍾管理
15.2.3塊RAM
15.2.4數字信號處理-DSP Slice
15.2.5輸入/輸齣
15.2.6低功耗串行收發器
15.2.7PCI-E模塊
15.2.8XADC(模擬-數字轉換器)
15.2.9配置
第16章Zynq-7000內的互聯結構
16.1係統互聯架構
16.1.1互聯模塊及功能
16.1.2數據路徑
16.1.3時鍾域
16.1.4連接性
16.1.5AXI ID
16.1.6寄存器概述
16.2服務質量
16.2.1基本仲裁
16.2.2QoS
16.2.3DDR端口仲裁
16.3AXI_HP接口
16.3.1AXI_HP接口結構及特點
16.3.2接口數據寬度
16.3.3交易類型
16.3.4命令交替和重新排序 <
包郵 Xilinx Zynq-7000嵌入式係統設計與實現:基於ARM Cortex-A9 下載 mobi epub pdf txt 電子書 格式
包郵 Xilinx Zynq-7000嵌入式係統設計與實現:基於ARM Cortex-A9 下載 mobi pdf epub txt 電子書 格式 2024
包郵 Xilinx Zynq-7000嵌入式係統設計與實現:基於ARM Cortex-A9 mobi epub pdf txt 電子書 格式下載 2024