-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
Xilinx Zynq-7000嵌入式系統設計實驗教程 版權信息
- ISBN:9787030705174
- 條形碼:9787030705174 ; 978-7-03-070517-4
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
Xilinx Zynq-7000嵌入式系統設計實驗教程 本書特色
適讀人群 :高等院校電子信息類專業本科生,嵌入式系統設計和應用技術人員本書可以作為高等院校電子信息類專業本科生教材和研究生學習參考用書,也可供嵌入式系統設計和應用技術人員自學的參考資料。
Xilinx Zynq-7000嵌入式系統設計實驗教程 內容簡介
本書以XilinxZynq-7000SoC系列為背景,介紹嵌入式系統設計和開發技術。全書以ZynqPS(ARMCortexA9)為核心,以ZynqPL(FPGA)部分為可編程外設,分10章。內容包括Vivado集成開發環境介紹、Zynq體系結構與開發流程、GPIO原理及接口程序設計、中斷與定時技術、Zynq處理器的軟件編程與FPGA的硬件協同設計、以PetaLinx工具實現嵌入式Linux操作系統移植、Zynq外設模塊結構和功能技術及綜合案例設計等內容。并以Xilinx公司新一代集成開發環境Vivado為平臺,基于XC7Z020SoC器件,介紹了嵌入式系統的完整設計流程,設計了實驗案例,并提供案例代碼。
Xilinx Zynq-7000嵌入式系統設計實驗教程 目錄
前言
第1章 Xilinx Zynq-7000 SoC概述 1
1.1 嵌入式系統簡介 1
1.2 片上系統的發展 4
1.3 Zynq AP SoC系統 5
1.3.1 Zynq-7000 SoC簡化模型 5
1.3.2 嵌入式SoC設計 6
1.4 Zynq-7000 SoC產品分類及資源 7
1.5 Zynq-7000 SoC功能和結構 8
1.5.1 Zynq-7000 SoC的功能 8
1.5.2 Zynq-7000 SoC處理系統 9
1.5.3 Zynq-7000 SoC可編程邏輯的構成 11
1.5.4 Zynq-7000 SoC內部的互聯結構 13
第2章 Zynq開發方法與開發流程 15
2.1 Zynq-7000 SoC開發流程 15
2.2 基于Vivado和SDK設計的開發流程 19
2.2.1 加載開發板的板載文件 19
2.2.2 使用Vivado創建硬件工程 19
2.2.3 使用SDK開發軟件 32
2.2.4 知識與實驗拓展 37
2.3 Zynq的啟動流程和啟動鏡像文件制作方法 39
2.3.1 Zynq-7000 SoC啟動流程 39
2.3.2 啟動文件的生成與下載 40
2.3.3 復習與拓展 46
2.4 Zynq開發流程總結 47
第3章 GPIO原理及應用實現 49
3.1 GPIO原理 49
3.1.1 GPIO接口及功能 49
3.1.2 Zynq GPIO的相關寄存器配置 50
3.1.3 GPIO編程實例 52
3.2 GPIO實驗案例 61
3.2.1 實驗目標 61
3.2.2 實驗內容 61
3.2.3 實驗流程與步驟 61
3.3 實驗要求與驗收標準 73
3.4 實驗拓展 74
第4章 Zynq中斷與定時技術 75
4.1 中斷技術 75
4.1.1 中斷原理 76
4.1.2 Zynq中斷體系結構 77
4.1.3 中斷程序設計 81
4.2 Zynq定時器技術 85
4.2.1 私有定時器和私有看門狗定時器 86
4.2.2 全局定時器/計數器 87
4.2.3 系統看門狗定時器 88
4.2.4 定時器/計數器 89
4.2.5 定時程序設計 91
4.3 Zynq中斷與定時實驗案例 94
4.3.1 實驗目標 94
4.3.2 實驗內容 94
4.3.3 實驗流程與步驟 94
4.4 實驗要求與驗收標準 102
4.5 實驗拓展 102
第5章 用戶自定義IP核設計 103
5.1 IP核概述 103
5.2 IP核設計方法 104
5.3 自定義IP核實驗案例 105
5.3.1 實驗目標 105
5.3.2 實驗內容 105
5.3.3 實驗流程與步驟 105
5.4 實驗要求與驗收標準 124
5.5 實驗拓展 124
第6章 Zynq調試技術及軟硬件系統調試 125
6.1 ILA核簡介 125
6.2 VIO核簡介 127
6.3 構建協同調試硬件系統和軟件工程 129
6.3.1 硬件系統構建 129
6.3.2 軟件工程創建 135
6.4 軟硬件協同調試 137
第7章 外設模塊結構和功能 144
7.1 SD/SDIO外設控制器 144
7.2 吉比特以太網控制器 146
7.3 UART控制器 149
7.4 I2C控制器 152
7.4.1 I2C概述 152
7.4.2 I2C控制器的功能 153
7.5 Zynq-7000 SoC內置XADC原理及實現 156
7.5.1 XADC結構 156
7.5.2 XADC工作模式 158
7.5.3 XADC IP核結構 161
7.5.4 XADC應用實例 162
第8章 Linux操作系統的移植和驅動技術 168
8.1 概述 168
8.2 使用PetaLinux工具配置Linux系統 168
8.2.1 準備Vivado工程 168
8.2.2 建立PetaLinux工程 169
8.2.3 配置Linux內核 175
8.2.4 配置根文件系統 177
8.2.5 編譯內核 177
8.2.6 生成BOOT文件 178
8.2.7 測試Linux系統 179
8.3 Linux系統常用命令簡介 180
8.4 Linux Xilinx GPIO 驅動技術簡介 181
8.5 Linux系統下GPIO 驅動實驗案例 184
8.6 Linux系統設備驅動技術 186
8.6.1 I2C設備驅動 187
8.6.2 Vivado工程設計 187
8.6.3 使用PetaLinux工具配置Linux系統及I2C驅動 187
8.6.4 使用C語言程序控制I2C設備 195
8.6.5 運行結果與拓展 197
第9章 數據采集系統的設計與實現 198
9.1 系統功能描述 198
9.2 任務分析設計 199
9.2.1 系統使用的相關傳感器概述 200
9.2.2 硬件系統設計 205
9.2.3 軟件功能設計 206
9.3 軟硬件程序設計與實現 210
9.3.1 使用Vivado創建硬件工程 210
9.3.2 使用SDK軟件設計系統功能 214
9.4 題目拓展 221
第10章 實驗平臺與開發環境概述 222
10.1 硬件平臺概述 222
10.2 集成開發環境概述 224
參考文獻 226
Xilinx Zynq-7000嵌入式系統設計實驗教程 節選
第1章 Xilinx Zynq-7000 SoC概述 本章首先對嵌入式系統、微處理器技術的發展進行概述,然后對Xilinx公司的全可編程技術的Zynq-7000 SoC進行介紹,主要包括片上系統(system on chip,SoC)的發展、Zynq-7000 SoC系統簡化模型、產品分類及資源、功能和結構、嵌入式開發技術。 1.1 嵌入式系統簡介 1. 現代計算機系統發展 現代計算機系統發展有兩大分支,即通用計算機系統和嵌入式計算機系統。 1)通用計算機系統 通用計算機系統是以高速、海量的數值計算為主的計算機系統,其以數值計算和處理為主,包括巨型機、大型機、中型機、小型機、微型機等。其技術要求是高速、海量的數值計算,技術方向是總線速度的無限提升、存儲容量的無限擴大。 2)嵌入式計算機系統 嵌入式計算機系統是嵌入對象體系中、以控制對象為主的計算機系統。其以對象的控制為主,技術要求是對對象的智能化控制能力,技術發展方向是與對象系統密切相關的嵌入性能、控制能力與控制的可靠性。 嵌入式系統可應用在工業控制、交通管理、信息家電、家庭智能管理系統、物聯網、電子商務、環境監測和機器人等方面。 2. 嵌入式系統定義 1)廣泛定義 電氣與電子工程師協會(Institute of Electrical and Electronics Engineers,IEEE)對嵌入式系統的定義為:嵌入式系統是用來控制、監視或者輔助機器、設備運行的裝置。 2)一般定義 嵌入式系統是以應用為中心、以計算機技術為基礎、軟硬件可裁剪,應用系統對功能、可靠性、成本、體積、功耗和應用環境有特殊要求的專用計算機系統。其是將應用程序、操作系統和計算機硬件集成在一起的系統,是設計完成復雜功能的硬件和軟件,并使其緊密耦合在一起的計算機系統。 3. 嵌入式處理器分類 1)微處理器 嵌入式微處理器(embedded microprocessor unit,EMPU)由通用計算機的微處理器(microprocessor unit,MPU)演變而來,芯片內部沒有存儲器,輸入/輸出(input/output,I/O)接口電路也很少。在嵌入式應用中,嵌入式微處理器去掉了多余的功能部件,而只保留與嵌入式應用緊密相關的功能部件,以保證它能以*低的資源和功耗實現嵌入式的應用需求。目前主要的嵌入式處理器類型有SC-400、PowerPC、68000、MIPS、ARM/Strong ARM系列等。 2)微控制器 推動嵌入式計算機系統走向獨立發展道路的芯片,也稱為單片微型計算機,簡稱單片機。由于這類芯片的作用主要是控制被嵌入設備的相關動作,因此業界常稱這類芯片為微控制器(microcontroller unit,MCU)。這種8位的電子器件目前在嵌入式設備中仍然有著極其廣泛的應用。單片機芯片內部集成只讀存儲器/電可擦除只讀存儲器(read-only memory/erasable programmable read-only memory,ROM/EPROM)、隨機存取存儲器(random access memory,RAM)、總線、總線邏輯、定時/計數器、看門狗定時器、I/O接口等各種必要功能和外設,代表性的通用系列包括8051、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。 3)嵌入式數字信號處理器 嵌入式數字信號處理器(embedded digital signal processor,EDSP)是指在微控制器的基礎上對系統結構和指令系統進行了特殊設計,使其適合執行數字信號處理(digital signal processing,DSP)算法并提高了編譯效率和指令的執行速度。在數字濾波、快速傅里葉變換(fast Fourier transform,FFT)、譜分析等方面,DSP算法正大量進入嵌入式領域,使DSP應用從早期的在通用單片機中以普通指令實現DSP功能,過渡到采用EDSP的階段,代表性的產品是Texas Instruments的 TMS320系列和Motorola的DSP56000系列。 4)SoC SoC是專用集成電路(application specific integrated circuit,ASIC)設計方法學中產生的一種新技術,是指以嵌入式系統為核心、以知識產權(intellectual property,IP)復用技術為基礎、集軟硬件于一體,并追求產品系統*大包容的集成芯片。SoC一般包括系統級芯片控制邏輯模塊、中央處理器(central processing unit,CPU)內核模塊、DSP模塊、嵌入的存儲器模塊、與外部通信的接口模塊、含有模數轉換器/數模轉換器(analog to digital converter/digital to analog converter,ADC/DAC)的模擬前端模塊、電源提供和功耗管理模塊等,是一個具備特定功能、服務于特定市場的軟件和集成電路的混合體。 4. 國產華為鯤鵬微處理器技術簡介 華為公司從1991年研制**枚傳輸網絡芯片開始,不斷探索自主研發技術,至2019年已研制出7nm制程、數據中心處理器鯤鵬920,其發展歷程如圖1.1所示。 鯤鵬微處理器是面向信息與通信技術(information and communication technology,ICT)領域、兼容ARM 64位指令集的多核處理器芯片,基于華為自研的具有完全知識產權的ARM?v8架構,采用業界領先的7nm制程、多Die合封的Chiplet封裝工藝,在提供強大計算能力的同時還集成了豐富且強大的I/O能力,為行業用戶實現業務加速提供支撐。 圖1.1 華為鯤鵬微處理器發展歷程 華為鯤鵬微處理器的特點如下: (1)鯤鵬作為通用的ARM v8處理器,是全球ARM生態中的重要一員; (2)已經構筑了相對完整的鯤鵬軟件生態; (3)鯤鵬不僅局限于鯤鵬系列服務器芯片,更是包含了完整的服務器軟硬件生態和全棧的云服務生態; (4)匯聚了芯片、服務器、操作系統、虛擬化容器、應用軟件、云服務和解決方案等。 華為鯤鵬系列微處理器的優勢如下: (1)提供強大的計算能力,*多支持64核; (2)采用自研的具有完全知識產權的ARM v8架構; (3)可通過片間高速緩沖存儲器(Cache)一致性接口Hydra擴展系統核數; (4)具有豐富且強大的I/O能力,集成以太網控制器、SAS(serial attached SCSI)控制器以及PCI-E 4.0控制器; (5)芯片集成安全算法引擎、壓縮/解壓縮引擎、存儲算法引擎等加速引擎進行業務加速。 5. 嵌入式操作系統 嵌入式操作系統是一種支持嵌入式系統應用的操作系統軟件,它是嵌入式系統極為重要的組成部分,通常包括與硬件相關的底層驅動軟件、系統內核、設備驅動接口、通信協議、圖形用戶界面及標準化瀏覽器等。與通用操作系統相比,嵌入式操作系統在系統實時高效性、硬件的相關依賴性、軟件固化及應用的專用性等方面有突出的特點。 低端應用以單片機或專用計算機為核心構成的可編程控制器的形式存在,一般沒有操作系統的支持,具有監控、伺服、設備指示等功能,帶有明顯的電子系統設計特點。高端應用以嵌入式CPU和嵌入式操作系統及各應用軟件構成的專用計算機系統的形式存在。 嵌入式操作系統通常包括與硬件相關的底層驅動軟件、系統內核、設備驅動接口、通信協議、圖形界面和標準化瀏覽器等,能運行于各種不同類型的微處理器上,具有編碼體積小、面向應用、可裁剪和移植、實時性強、可靠性高、專用性強等特點,并具有大量的應用程序接口(application program interface,API)。常見的嵌入式操作系統有嵌入式Linux、Windows CE、Symbian、Android、uC/OS-II、VxWorks等。 1.2 片上系統的發展 在幾十年前,要構建一個嵌入式系統,需要使用大量的器件、大量的機械連接裝置,以及額外大量的ASIC器件。這種設計結構會帶來各方面問題,如增加系統的整體功耗、總成本,降低系統的可靠性和安全性,系統維護成本較高等。 隨著半導體技術的不斷發展,可以將構成系統的大量元件集成到單個芯片中,如CPU內核、總線結構、功能豐富的外設控制器,以及模數混合器件。這種將一個計算機系統集成到單芯片中的結構稱為SoC。SoC的解決方案成本更低,能在不同的系統單元之間實現更快、更安全的數據傳輸,具有更高的整體系統速度、更低的功耗、更小的物理尺寸和更高的可靠性。 但是基于ASIC的SoC也有開發時間長和成本高、靈活性差等缺點。開發ASIC工程時開發時間和投入成本是巨大的,使得這種SoC類型只適合于大批量而且將來不需要升級的市場領域。基于ASIC的SoC的應用包括在個人計算機(personal computer,PC)、平板電腦和智能手機上用的集成處理器。基于ASIC的SoC的局限性導致它們不適用于很多應用,特別是那些需要快速投入市場以及產品的靈活性和升級能力比較重要的情形。對于小批量或中批量的產品,基于ASIC的SoC也不是很好的解決方案。 顯然,人們需要更靈活的解決方案,現場可編程邏輯門陣列(field programmable gate array,FPGA)是自然的選擇。FPGA可以配置實現任何系統的芯片,可以用來實現嵌入式處理器。FPGA還可以完全重新配置,與用ASIC 實現SoC相比,FPGA能構成更為基礎靈活的平臺。在一個需要系統升級的應用中部署FPGA幾乎是沒有風險的。美國Xilinx公司提出了全可編程(all programmable,AP)SoC結構,即AP SoC。與SoC相比,AP SoC充分利用了FPGA內部結構的靈活性,克服了傳統SoC器件靈活性差、專用性強及設計復雜的缺點;同時,AP SoC又具備傳統SoC器件的所有優勢。 Xilinx公司將自己開發的8位Picoblaze和32位Microblaze軟核的嵌入式處理器,以及IBM公司的 PowerPC和ARM公司的雙核Cortex-A9硬核處理器嵌入FPGA芯片中。這種基于FPGA的全可編程平臺提供了一個更加靈活的解決方案。在這個方案中,單個可編程芯片上提供了大量不同的IP軟核和硬核資源,并且設計人員可以在任何時間對這些資源進行升級。這種全可編程的結構特點,大大縮短了系統的開發時間。并且,同一平臺能應用在很多領域,因此極大地提高了平臺的資源復用率。 全可編程結構的出現使得設計人員可以優化系統吞吐量及開發周期,并且提供前所未有的軟件和硬件邏輯協同設計的靈活性。這種靈活性主要體現在當設計嵌入式系統時,設計人員能夠根據系統性能要求和提供的設計資源,靈活地確定如何將系統實現的功能合理地分配到軟件和可編程邏輯資源。這就是軟件和硬件設計的協同性,這種協同性不同于傳統嵌入式系統的協同設計,因為雖然傳統的嵌入式系統也使用軟件和硬件的協同設計,但是基本上還是大量地使用分離的設計流程。典型地,硬件設計人員負責制定硬件設計規范,而軟件設計人員負責制定軟件設計規范,結果就導致參與嵌入式系統設計的軟件和硬件開發人員對同一問題有著截然不同的理解。同時,這對設計團隊的溝通能力也提出了很高的要求。 目前,隨著AP SoC容量和性能的不斷提高,全新的AP技術已經應用到不同的領域,如通信、汽車電子、大數據處理、機器學習等。它已經不是傳統意義上用于連接不同接口設
- >
月亮虎
- >
推拿
- >
我從未如此眷戀人間
- >
羅庸西南聯大授課錄
- >
莉莉和章魚
- >
巴金-再思錄
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
山海經