本書特點
本書循序漸進的由基礎知識到實戰案例,向讀者闡述了如何利用Zynq平臺進行嵌入式系統以及軟硬體協同設計的開發。
提供完整的工程文件和程式碼,讓您學習更有效率。
本書內容
本書分為基礎篇與進階篇兩部分,基礎篇中介紹了Zynq器件、ZedBoard,並配有簡單入門實驗,同時針對軟體發展人員增設了FPGA硬體加速等內容。在進階篇中介紹了利用Zynq進行軟硬體協同設計,同時對處理器與可程式設計邏輯介面等技術進行了詳細剖析。
本書提供了20個詳細的設計案例,涵蓋了硬體板卡、FPGA邏輯、Linux驅動、Linux作業系統、上層應用、軟硬體協同設計等Zynq開發中可能遇到的各個方面的知識,並在最後將前述獨立案例整合為4個系統案例。本書重點突出實戰,以案例為指導,配合介紹相關參考文檔,協助讀者儘快掌握在Zynq上進行各項設計的方法。
本書可作為Zynq初學者、軟硬體協同設計開發人員的參考用書,亦可作為大專院校嵌入式系統設計、片上系統設計、可程式設計邏輯器件等相關專業的教師和學生的參考用書。
作者序
前言
平台及寫作背景
作為全球最大的可程式化邏輯平台的供應商,Xilinx 已將可程式化邏輯技術帶領到了All Programmable(全可程式化)的時代,其產品不僅有最新的28nm的7 系列(分為Artix7,Kintex7,Virtex7)FPGA 晶片,更有透過SSI(堆疊晶圓互連)技術實現的最大容量FPGA Virtex7-2000T,同時在FPGA 晶片內整合了高速AD 以及最高可達28.05Gb/s 的高速串列通訊埠等可程式化邏輯外的模組。對於應用者而言,除了以上製程的創新外,更具有劃時代意義的是Xilinx 推出的Zynq-7000 AP SoC 晶片,其不僅解決了晶片製程實現上的困難,更解決了片內高性能處理器與高性能可程式化邏輯資料互動協定的困難。
Zynq-7000 是首款將高性能ARM Cortex A9 硬體核心與可程式化邏輯緊密整合到一起的元件。在Zynq 平台中,我們首先可以把可程式化邏輯看成是處理器外接裝置中一個具有可重設定特點的「外接裝置」,例如當序列埠或乙太網介面不夠時、需要視頻界面時,都可以用可程式化邏輯擴充;其次我們也可將其看成一個與處理器對等的主裝置,其可主動完成與外部晶片的資料互動,例如主動進行視訊、網路資料前置處理。透過這樣的結合,既發揮了處理器在處理複雜控制演算法、執行作業系統等方面的優勢,又利用FPGA 在平行算法加速、可動態重設定的特點,實現了系統加速,增加了靈活性;同時以片內結合為基礎的方案,減少了板面積,降低了耗電,也加快了硬體開發速度。結合Zynq 推出,Xilinx 不僅在先期將所有IP 核心介面切換到基於ARM AMBA4.0(AXI4)的標準,實現了邏輯IP 與Zynq 無縫移轉,同時還推出了C2HDL 的高層綜合工具AutoESL(目前已整合到最新的開發套件Vivado 中),這加快了已有演算法的硬體化過程,同時也使得軟體工程師可以在Zynq 上獨立完成軟硬體協作設計。
針對這些新的技術和概念,讀者不妨帶著這樣一些疑問閱讀本書:現在有什麼開發板可以直接用? ARM+FPGA 這樣的結構與板載ARM 處理器與FPGA 晶片的結合到底有哪些區別? ARM 與FPGA 在一個晶片內到底是如何緊密配合的?互相之間資料互動的介面和方式是怎樣的?通電之後ARM 和FPGA 是如何設定的?利用AutoESL 工具到底如何跟Zynq 結合? Linux 作業系統與FPGA 又是如何結合的?這裡的驅動如何寫?在本書中,將陸續對這些問題進行解答。
從Zynq 平台提出伊始,全球各地的客戶對這一平台都產生了濃厚的興趣,Xilinx 也於2011 年年末正式發佈了Zynq 的晶片,在2012 年年初就已經有了第一塊Zynq 開發板ZC702。到了2012 年6 月份,專為社區使用者以及科學研究、教學使用者訂製的低價版本ZedBoard 板也正式面世。但是對一個全新的平台來說,可參考的資源相對缺乏。我們從2012 年7 月份開始在ZedBoard 板上進行設計時就已經明顯感受到專案進度因缺少參考資源而受到的影響。而到了美信的DIY大賽時,更聽到國內使用者對參考資料的迫切需求,尤其是對應的中文資料。
而2013 年1 月份採用ZedBoard 板作為主要平台的開放原始碼硬體與嵌入式大賽—OpenHW12 也即將展開。
在這樣的背景下,賽靈思大學計畫部門決定以最快的速度對我們在這幾個月中開發的、參與的、學習的案例進行整理,撰寫出一本由淺入深、以案例為主的實戰類別書籍,希望透過這本書能幫助大家儘快了解、熟悉並掌握Zynq 的開發。
閱讀提示
本書分為基礎篇和進階篇兩部分。
基礎篇中主要介紹了ZedBoard 板、Zynq 元件、開發工具鏈、Zynq 的系統結構及其啟動過程等基本的元件與電路板情況,同時考慮了軟體工程師的知識結構。在第8 章中介紹了FPGA 的原理,以及硬體加速的原理,便於軟體工程師了解FPGA。在第9 章中透過基礎實驗帶領大家淺嘗Zynq 的開發過程,並帶領大家用ZedBoard 板架設出一個單板電腦系統。
進階篇中,首先介紹了利用虛擬平台QEMU 進行軟體開發的流程。在第11章中詳細分析了Zynq 中處理器與硬體邏輯的連接關係。第12 章主要介紹了在Zynq 上利用AutoESL 進行軟硬體協作設計的理念與過程。第13 章佔了全書四分之一的篇幅,介紹了使用Zynq 實現邏輯、驅動、作業系統、高畫質視訊顯示、OpenCV、網路攝影機等12 個應用案例,這是本書的精華之一。在第14 章,將13 章中提到的獨立案例再融合成4 個系統案例,這4 個系統案例都會應用到前面章節的知識,以此幫助大家儘快掌握在Zynq 上進行系統級設計的方法。筆者在這些年支援客戶的過程中, 常常會發現客戶困擾於不知如何尋找到Xilinx 相關工具、IP 的參考文件、參考設計。因此本書第15 章中主要介紹了如何取得資料和幫助,重點介紹了Xilinx 新推出的DocNav 工具,希望能幫助初學者迅速找到Xilinx 資料。
在本書案例開發與寫作的過程中,Xilinx 的工具已升級到了更高的14.3 版本,但是本書的部分案例是以14.1 版本為基礎的。在切換工具版本的過程中,相關設計可能會略有差異,因此本書在附錄中介紹了14.3 與14.1 工具版本的變化,便於大家快速移植設計。所以讀者在使用本書案例前,請務必閱讀一下本書的附錄部分。
前言
平台及寫作背景
作為全球最大的可程式化邏輯平台的供應商,Xilinx 已將可程式化邏輯技術帶領到了All Programmable(全可程式化)的時代,其產品不僅有最新的28nm的7 系列(分為Artix7,Kintex7,Virtex7)FPGA 晶片,更有透過SSI(堆疊晶圓互連)技術實現的最大容量FPGA Virtex7-2000T,同時在FPGA 晶片內整合了高速AD 以及最高可達28.05Gb/s 的高速串列通訊埠等可程式化邏輯外的模組。對於應用者而言,除了以上製程的創新外,更具有劃時代意義的是Xilinx 推出的Zynq-7000 AP SoC 晶片,其不僅解決了晶片製程實現上的困難,更解決了片...
目錄
第1章 初試ZedBoard
第2章 Zynq平臺介紹
第3章 ZedBoard開發環境
第4章 開發工具鏈
第5章 Zynq系統結構
第6章 系統級信號
第7章 Zynq啟動與設定
第8章 針對軟體工程師的邏輯設計
第9章 ZedBoard入門
第10章 以虛擬平臺為基礎的Zynq開發
第11章 PL和PS的介面技術詳解
第12章 以Zynq為基礎的軟硬體協作設計
第13章 Zynq開發實戰
第14章 系統級設計案例
第15章 如何取得資料和幫助
附錄A Xilinx開發套件版本14.1到14.3的主要升級變化
第1章 初試ZedBoard
第2章 Zynq平臺介紹
第3章 ZedBoard開發環境
第4章 開發工具鏈
第5章 Zynq系統結構
第6章 系統級信號
第7章 Zynq啟動與設定
第8章 針對軟體工程師的邏輯設計
第9章 ZedBoard入門
第10章 以虛擬平臺為基礎的Zynq開發
第11章 PL和PS的介面技術詳解
第12章 以Zynq為基礎的軟硬體協作設計
第13章 Zynq開發實戰
第14章 系統級設計案例
第15章 如何取得資料和幫助
附錄A Xilinx開發套件版本14.1到14.3的主要升級變化
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。