【有庫存】NT售價: 245 元
隨著人工智能、大數據、圖像處理等技術的發展,傳統計算機架構難以滿足日益增長的數據處理需求,FPGA的存在使傳統體系結構發生了較大的變化,軟硬協同設計使得傳統架構進行了較為深入的改革。FPGA工程師想從事該行業,除了需要有較為扎實的數字電路知識外,還要學會相關的FPGA設計方法,有閱讀文檔的能力。目前圖書市場上關于FPGA的圖書不少,但有的圖書過于注重理論,有的圖書過于注重零碎的知識點和心得體會。本書以實戰為宗旨,通過初級、中級、高級三個階段的案例,讓讀者全面、深入、透徹地理解FPGA開發的原理,提高讀者的實際開發水平和項目實戰能力。本書特色1. 詳細深入的解說為了便于讀者理解本書內容、提高學習效率,本書從易到難逐漸深入講解FPGA的設計方法。2. 原理講解深入透徹為了讓有一定基礎的讀者進一步提升自己的能力,本書后期內容更偏向于原理的講解,使初級FPGA工程師快速提高自己。3. 流程圖、時序圖豐富精確FPGA工程師都懂時序圖的價值,本書中的時序圖均是由作者親自繪制的,講解詳細,讀者深入體會便可快速提高開發能力。4. 項目案例典型,實戰性強,有較高的應用價值本書使用項目案例進行解說。這些案例來源于作者所開發的實際項目,具有很高的應用價值和參考性,便于讀者融會貫通、理解書中所介紹的技術。這些案例稍加修改便可用于實際項目開發中。本書知識體系第1章 FPGA基本情況介紹本章介紹了FPGA簡史、FPGA和其他器件的區別、Altera與Xilinx兩大公司的產品及FPGA的基本結構、應用領域和最新進展等。第2章 FPGA設計基礎知識本章介紹FPGA相應開發軟件的下載及安裝方法、Verilog語言的語法、FPGA的開發流程等。第3章 FPGA初級設計本章主要介紹呼吸燈、流水燈、按鍵控制LED、自動售貨機的設計與實現,從需求分析、流程圖、時序圖、源碼等方面依次遞進,逐級深入,便于初學者細細理解、打好基礎。第4章 FPGA中級設計本章主要介紹串口通信設計與實現、VGA設計與實現、VGA顯示圖像、Sobel算子實現,講解串口通信、VGA顯示等原理。設計FPGA不僅僅需要基礎設計方法,更重要的是對原理的理解和剖析。第5章 FPGA高級設計本章主要介紹DDR3和PCIE的理論與實踐部分。其中,篇幅最多的是原理性的講解和文檔的閱讀分析,并且對大量英文文檔做了詳細的翻譯解讀。第6章 FPGA高級綜合設計 本章主要介紹FPGA如何用SG軟件和HLS軟件進行設計。本章的目的是提供一種全新的設計思路,這也是Xilinx公司一個主要的發展方向。本書資源彩圖下載為了使讀者看清楚本書使用的圖片,我們把彩色圖片文件放到網盤中供讀者下載,可以掃描右邊的二維碼獲取。如果下載有問題,請聯系booksaga@163.com,郵件主題為“FPGA實戰訓練精粹”。本書讀者? 需要全面學習FPGA的人員? 廣大FPGA工程師? 希望提高項目開發水平的人員? 專業培訓機構的學員? 邏輯硬件開發項目經理? 需要一本案頭必備查詢手冊的人員從2017年12月起筆,到2018年7月寫完,作者用半年多的時間將之前的FPGA項目由易到難做了詳細的總結。本書第1章和第6章由章振棟書寫、第2~5章由張晉榮書寫。劉榮福對一些器件的使用和特性進行了指點。在此,感謝劉靖宇老師對作者學習FPGA的大力支持。師恩重如山,劉靖宇老師在作者讀研期間提供了很多寶貴的意見。同樣感謝V3學院的楊亮老師,他在作者學習FPGA期間提供了很多指導性意見并給予了巨大的支持鼓勵。最后感謝張奇、王迪、王守彬、張冰、彭偉桃、高一寒、王月華、王建姣、陳彤、范金泉等小伙伴對作者寫書的鼓勵和支持。張晉榮2019年1月
本書以實戰開發為原則,先通過初級、中級、高級三個階段的案例,讓讀者全面、深入、透徹地理解FPGA開發的原理以提高實際開發水平和項目實戰能力,再通過FPGA高級綜合設計對SG軟件和HLS軟件進行介紹,提供一種全新的FPGA編程方法。本書共分6章,涵蓋的內容有FPGA簡史、FPGA和其他器件的區別、FPGA相應開發軟件的下載及安裝方法、Verilog語言的語法、FPGA開發流程、呼吸燈設計與實現、流水燈設計與實現、按鍵控制LED設計與實現、自動售貨機的設計與實現、串口通信設計與實現、VGA設計與實現、VGA顯示圖像、Sobel算子實現、VGA顯示原理、DDR3和PCI-e的理論講解與實踐、SG軟件和HLS軟件。本書內容豐富,實例典型,實用性強,適合各個層次想要學習FPGA的人員閱讀,尤其適合有一定FPGA基礎且想進一步學習的開發人員閱讀。
第1章FPGA基本情況介紹 11.1FPGA簡史 11.1.1FPGA與ASIC 11.1.2FPGA與CPLD 41.1.3Altera與Xilinx 51.1.4Verilog與VHDL 61.2FPGA芯片(Xilinx)介紹 81.2.1FPGA的基本結構 81.2.2軟核、硬核及固核 121.2.37系列FPGA簡介 131.3FPGA的應用領域 171.3.1機器學習 171.3.25G無線 191.3.3嵌入式視覺 201.3.4工業物聯網 211.3.5云計算 221.3.6FPGA硬件加速平臺 231.4總結 23第2章FPGA設計基礎知識 242.1軟件下載及安裝 242.1.1ISE下載及安裝 242.1.2ModelSim下載及安裝 282.1.3Vivado下載及安裝 292.1.4ISE關聯ModelSim 322.1.5Vivado關聯ModelSim 362.1.6UE(UltraEdit)的安裝和配置 402.2Verilog基本語法介紹 442.2.1發展歷史 442.2.2語言設計思路 452.2.3語言要素 462.2.4數據類型 472.2.5流程控制 502.2.6語言描述方法 522.2.7邏輯門級描述 562.2.8晶體管級描述 572.2.9邏輯綜合編輯 582.2.10可綜合代碼 582.2.11不可綜合結構類型 582.2.12高級功能編輯 592.3FPGA開發流程 602.3.1設計流程 602.3.2典型FPGA開發流程與注意事項 612.4總結 63第3章FPGA初級設計 643.1呼吸燈設計與實現 643.1.1需求分析 643.1.2流程 643.1.3時序圖 653.1.4時序圖寄存器分析 663.1.5源碼展示 673.1.6仿真文件 683.1.7仿真結果分析 693.1.8約束文件 703.1.9擴展訓練 703.2流水燈設計與實現 703.2.1需求分析 703.2.2流程 713.2.3時序圖 713.2.4時序圖寄存器分析 723.2.5源碼展示 733.2.6仿真文件 743.2.7仿真結果分析 743.2.8擴展訓練 753.3按鍵控制LED設計與實現 753.3.1需求分析 753.3.2流程 753.3.3時序圖 753.3.4時序圖寄存器分析 763.3.5源碼展示 773.3.6仿真文件 793.3.7仿真結果分析 803.3.8擴展訓練 813.4自動售貨機設計與實現 813.4.1需求分析 813.4.2流程 813.4.3時序圖 823.4.4時序圖寄存器分析 843.4.5源碼展示 873.4.6仿真文件 873.4.7仿真結果分析 893.4.8擴展訓練 903.5總結 90第4章FPGA中級設計 914.1串口通信設計與實現 914.1.1需求分析 914.1.2UART協議簡介 914.1.3流程圖 934.1.4源碼分析 944.1.5仿真測試 974.2VGA設計與實現 994.2.1需求分析 994.2.2VGA原理簡介 994.2.3源碼展示分析 1034.2.4仿真結果分析 1064.2.5擴展訓練 1074.3VGA顯示圖像 1074.3.1需求分析 1074.3.2流程 1074.3.3時序圖 1084.3.4調用RAM模塊IP核步驟 1084.3.5擴展訓練 1104.4Sobel算子實現 1104.4.1需求分析 1104.4.2Sobel算子詳解 1104.4.3Sobel算子流程 1124.4.4Sobel算子時序圖 1134.4.5核心代碼展示和分析 1144.5總結 120第5章FPGA高級設計 1215.1DDR3理論講解和實踐部分 1215.1.1DDR3工作流程 1215.1.2DDR3的一些基本概念 1235.1.3文檔研讀 1285.1.4DDR3的IP核測試 1335.1.5總結 1395.2PCI-e理論講解和實踐 1395.2.1理論講解 1395.2.2擴展和未來方向 1445.2.3硬件協議摘要 1445.2.4RIFFA簡介 1475.2.5RIFFA使用之FPGA端 1505.2.6RIFFA使用之PC端 1575.3總結 159第6章FPGA高級綜合設計 1606.1SystemGenerator介紹及安裝 1606.2SystemGenerator工具的基本使用方法 1666.2.1SystemGenerator中的庫 1676.2.2SystemGenerator中的數據類型 1746.2.3SystemGenerator自動代碼生成 1746.3SystemGenerator實例 1756.3.1FIR濾波器實例 1766.3.2FFT實例 1936.3.3數字正交解調(DDC)實例 1996.4HLS介紹及安裝 2116.5HLS工具的基本使用方法 2136.6HLS實例——基于HLS的Sobel邊緣檢測 2146.6.1再次出現的Sobel算子 2146.6.2MATLAB仿真實現邊緣檢測 2166.6.3HLS實現圖像邊緣檢測 2166.7總結 224