《FPGA現代數字系統設計——基於Xilinx可程式邏輯器件與Vivado平台》是2019年出版的圖書,作者是孟憲元、錢偉康。
基本介紹
- 書名: FPGA現代數字系統設計——基於Xilinx可程式邏輯器件與Vivado平台
- 作者:孟憲元、錢偉康
- ISBN:9787302499138
- 出版時間:2019年4月1日
出版信息,內容簡介,目錄,
出版信息
FPGA現代數字系統設計——基於Xilinx可程式邏輯器件與Vivado平台
作者:孟憲元、錢偉康
定價:79元
印次:1-1
ISBN:9787302499138
出版日期:2019年4月1日
印刷日期:2019.02.21
內容簡介
本書是以Xilinx公司全可程式FPGA和SoC為基礎,針對最新的設計工具軟體——Vivado介紹FPGA設計理論與設計方法。全書分為8章,包括現代數字系統設計技術概論、可程式邏輯器件、Verilog HDL硬體描述語言、Vivado設計流程、數字系統的設計與綜合、基於FPGA的DSP系統設計、Zynq嵌入式系統設計技術和EGO1綜合性設計項目舉例。各章都安排了針對性強的已驗證過的設計實例,並附有Verilog HDL手冊、EGO1開發板資料,供師生在教學中選用。本書可作為高等院校電子、通信、自動化、計算機等專業本科教學參考書,也可作為信息類專業研究生和數字系統設計人員的參考書。
目錄
第1章現代數字系統設計概論
1.1概述
1.2數字系統的層次化結構
1.2.1開關電路級的基礎——CMOS反相器
1.2.2邏輯級的門電路
1.2.3暫存器傳輸級的有限狀態機
1.2.4數字系統的系統級構成
1.2.5複雜系統的算法級設計
1.3數字系統設計的描述方法
1.3.1原理圖設計
1.3.2程式設計法
1.3.3IP模組的使用
1.3.4基於模型的設計技術
1.3.5高層次綜合——HLS設計
1.3.6腳本設計技術
1.4IP技術
1.4.1IP智慧財產權模組
1.4.2IP模組的種類與套用
1.4.3片上系統和IP核復用
1.5全可程式FPGA/SoC實現智慧型化系統
1.5.1軟體智慧型化和硬體最佳化
1.5.2線上可重構技術
1.5.3可重配置加速堆疊
本章小結
習題
第2章可程式邏輯器件
2.1概述
2.1.1可程式邏輯器件概述
2.1.2可程式邏輯器件分類
2.2CPLD的結構和工作原理
2.2.1簡單可程式邏輯器件原理
2.2.2CPLD的結構和工作原理
2.3FPGA的結構和工作原理
2.3.1SRAM查找表類型
2.3.2反熔絲多路開關類型
2.4邏輯級FPGA的結構和工作原理
2.4.1可程式邏輯
2.4.2可程式互連線
2.4.3可程式I/O
2.5系統級FPGA的結構和工作原理
2.5.1片上存儲器及接口
2.5.2數字時鐘管理
2.5.3時鐘資源
2.5.4系統級I/O
2.6平台級FPGA的結構和工作原理
2.6.1DSP模組
2.6.2高速串列接口
2.7全可程式FPGA的特性和結構
2.7.1採用統一的7系列架構
2.7.2高性能和低功耗結合的工藝
2.8ASIC架構的UltraScale系列
2.8.1UltraScale架構
2.8.2SSI互連技術
2.9FPGA的配置
2.9.1編程原理簡介
2.9.2編程模式
2.9.3典型的配置電路
2.9.4編程流程
2.9.5部分重配置
本章小結
習題
第3章Verilog硬體描述語言
3.1硬體描述語言概述
3.1.1硬體描述語言特點
3.1.2層次化設計
3.2VerilogHDL程式的基本結構
3.2.1模組結構分析
3.2.2模組的實例化
3.3VerilogHDL詞法、數據類型和運算符
3.3.1詞法約定
3.3.2數據類型
3.3.3運算符
3.4VerilogHDL行為語句
3.4.1賦值語句
3.4.2順序塊和並行塊語句
3.4.3結構說明語句
3.4.4條件語句
3.4.5循環語句
3.4.6系統任務和系統函式
3.4.7編譯預處理命令
3.4.8VerilogHDL可綜合設計
3.5VerilogHDL設計舉例
3.5.1組合電路設計
3.5.2時序電路設計
3.5.3數字系統設計
3.5.4數碼管掃描顯示電路
3.5.5LED通用異步收發電路設計
3.6Testbench檔案與設計
本章小結
習題
第4章Vivado設計工具
4.1Vivado工具概述
4.1.1單一的、共享的、可擴展的數據模型
4.1.2標準化XDC約束檔案——SDC
4.1.3多維度分析布局器
4.1.4IP封裝器、集成器和目錄
4.1.5VivadoHLS
4.1.6其他特性
4.1.7TCL特性
4.1.8Vivado按鍵流程執行設計項目
4.2Vivado設計流程
4.2.1創建工程
4.2.2功能仿真
4.2.3RTL級分析
4.2.4綜合設計
4.2.5分配引腳和時序
4.2.6設計實現
4.2.7生成bit檔案
4.2.8下載
4.3產生IP集成器子系統設計
4.3.1產生IP集成器模組設計
4.3.2定製IP
4.3.3完成子系統設計
4.3.4產生IP輸出產品
4.3.5例示IP到設計中
4.4硬體診斷
4.4.1設計診斷概述
4.4.2Vivado邏輯診斷IP核
4.4.3HDL例示法添加ILA核
4.4.4系統內診斷uart_led設計
4.4.5網表插入法添加診斷核
4.4.6添加VIO診斷核
本章小結
習題
第5章數字系統的高級設計與綜合
5.1Verilog編程風格
5.1.1邏輯推理
5.1.2陷阱
5.1.3設計組織
5.1.4針對XilinxFPGA的HDL編碼
5.2綜合最佳化
5.2.1速度與面積
5.2.2資源共享
5.2.3流水線、重新定時和暫存器平衡
5.2.4有限狀態機編譯
5.3數字系統的同步設計
5.3.1同步設計基本原理
5.3.2建立和保持時間
5.3.3時序例外約束
5.3.4同步設計中的異步問題
5.4數字系統的綜合
5.4.1數字系統綜合概述
5.4.2系統級綜合
5.4.3高級綜合
5.4.4暫存器傳輸級綜合
5.4.5邏輯級綜合
本章小結
習題
第6章FPGADSP系統設計
6.1DSP基礎
6.1.1DSP的基本概念
6.1.2FPGA實現DSP的特點
6.2DSP硬核的結構與使用
6.2.1輸入和輸出連線埠
6.2.2DSP48E1模組的操作
6.2.3輸入連線埠邏輯電路
6.2.4輸出連線埠邏輯
6.3FPGA設計DSP技術
6.3.1浮點數與定點數的表示與轉換
6.3.2採樣周期的設定
6.3.3SystemGenerator模組
6.3.4BlackBox模組
6.3.5ModelSim模組
6.3.6GatewayIn模組和GatewayOut模組
6.3.7Concat模組、Convert模組、Reinterpret模組和Slice模組
6.3.8模組通用屬性
6.4DSP48實現MAC
6.4.1利用XilinxBlockset設計12×8MAC
6.4.2利用Simulink仿真12×8MAC
6.4.3利用SystemGeneratorBlock產生代碼
6.4.4實現12×8MAC設計
6.4.5硬體協同仿真校驗設計
6.5設計FIR濾波器
6.5.1產生FIR濾波器的係數
6.5.2輸入FIR濾波器係數
6.5.3在Simulink中仿真FIR濾波器
6.5.4實現FIR濾波器
6.5.5連線演示板,通過Simulink仿真設計
6.6設計MACFIR濾波器
6.6.1分析係數
6.6.2添加控制邏輯並參數化
6.6.3添加雙口RAM
6.6.4在數據連線埠添加填充位和去填充位
6.6.5完成MACFIR設計
6.6.6用各種信源測試設計
6.6.7執行硬體在環路校驗
6.7VivadoHLS
6.7.1高級綜合的調度和裝配
6.7.2數據通道+控制器架構
6.7.3理解VivadoHLS
6.7.4高級綜合的最佳化方法
本章小結
習題
第7章嵌入式系統Zynq設計
7.1Zynq概述
7.2Zynq設計入門
7.2.1Vivado工程創建
7.2.2由Vivado創建Zynq嵌入式系統
7.2.3SDK應用程式編寫
7.3Zynq嵌入式系統調試方法
7.3.1Vivado硬體調試
7.3.2使用SDK進行Zynq調試
7.4調試Linux套用
7.4.1產生SDK軟體工作空間
7.4.2啟動超級終端
7.4.3添加和診斷軟體套用
本章小結
習題
第8章綜合設計實例
8.1實例一:基於VGA接口的設計實例
8.1.1設計任務
8.1.2原理分析與系統方案
8.2實例二:PS/2鍵盤編解碼演示系統
8.2.1設計任務
8.2.2原理分析與系統方案
8.2.3設計實現
8.3實例三:實現SOPC系統
8.3.1設計任務和方案
8.3.2實驗步驟
8.3.3實驗調試設備
本章小結
習題
附錄AEGO1用戶手冊
附錄BVerilogHDL(IEEE13642001)關鍵字表及說明
參考文獻
1.1概述
1.2數字系統的層次化結構
1.2.1開關電路級的基礎——CMOS反相器
1.2.2邏輯級的門電路
1.2.3暫存器傳輸級的有限狀態機
1.2.4數字系統的系統級構成
1.2.5複雜系統的算法級設計
1.3數字系統設計的描述方法
1.3.1原理圖設計
1.3.2程式設計法
1.3.3IP模組的使用
1.3.4基於模型的設計技術
1.3.5高層次綜合——HLS設計
1.3.6腳本設計技術
1.4IP技術
1.4.1IP智慧財產權模組
1.4.2IP模組的種類與套用
1.4.3片上系統和IP核復用
1.5全可程式FPGA/SoC實現智慧型化系統
1.5.1軟體智慧型化和硬體最佳化
1.5.2線上可重構技術
1.5.3可重配置加速堆疊
本章小結
習題
第2章可程式邏輯器件
2.1概述
2.1.1可程式邏輯器件概述
2.1.2可程式邏輯器件分類
2.2CPLD的結構和工作原理
2.2.1簡單可程式邏輯器件原理
2.2.2CPLD的結構和工作原理
2.3FPGA的結構和工作原理
2.3.1SRAM查找表類型
2.3.2反熔絲多路開關類型
2.4邏輯級FPGA的結構和工作原理
2.4.1可程式邏輯
2.4.2可程式互連線
2.4.3可程式I/O
2.5系統級FPGA的結構和工作原理
2.5.1片上存儲器及接口
2.5.2數字時鐘管理
2.5.3時鐘資源
2.5.4系統級I/O
2.6平台級FPGA的結構和工作原理
2.6.1DSP模組
2.6.2高速串列接口
2.7全可程式FPGA的特性和結構
2.7.1採用統一的7系列架構
2.7.2高性能和低功耗結合的工藝
2.8ASIC架構的UltraScale系列
2.8.1UltraScale架構
2.8.2SSI互連技術
2.9FPGA的配置
2.9.1編程原理簡介
2.9.2編程模式
2.9.3典型的配置電路
2.9.4編程流程
2.9.5部分重配置
本章小結
習題
第3章Verilog硬體描述語言
3.1硬體描述語言概述
3.1.1硬體描述語言特點
3.1.2層次化設計
3.2VerilogHDL程式的基本結構
3.2.1模組結構分析
3.2.2模組的實例化
3.3VerilogHDL詞法、數據類型和運算符
3.3.1詞法約定
3.3.2數據類型
3.3.3運算符
3.4VerilogHDL行為語句
3.4.1賦值語句
3.4.2順序塊和並行塊語句
3.4.3結構說明語句
3.4.4條件語句
3.4.5循環語句
3.4.6系統任務和系統函式
3.4.7編譯預處理命令
3.4.8VerilogHDL可綜合設計
3.5VerilogHDL設計舉例
3.5.1組合電路設計
3.5.2時序電路設計
3.5.3數字系統設計
3.5.4數碼管掃描顯示電路
3.5.5LED通用異步收發電路設計
3.6Testbench檔案與設計
本章小結
習題
第4章Vivado設計工具
4.1Vivado工具概述
4.1.1單一的、共享的、可擴展的數據模型
4.1.2標準化XDC約束檔案——SDC
4.1.3多維度分析布局器
4.1.4IP封裝器、集成器和目錄
4.1.5VivadoHLS
4.1.6其他特性
4.1.7TCL特性
4.1.8Vivado按鍵流程執行設計項目
4.2Vivado設計流程
4.2.1創建工程
4.2.2功能仿真
4.2.3RTL級分析
4.2.4綜合設計
4.2.5分配引腳和時序
4.2.6設計實現
4.2.7生成bit檔案
4.2.8下載
4.3產生IP集成器子系統設計
4.3.1產生IP集成器模組設計
4.3.2定製IP
4.3.3完成子系統設計
4.3.4產生IP輸出產品
4.3.5例示IP到設計中
4.4硬體診斷
4.4.1設計診斷概述
4.4.2Vivado邏輯診斷IP核
4.4.3HDL例示法添加ILA核
4.4.4系統內診斷uart_led設計
4.4.5網表插入法添加診斷核
4.4.6添加VIO診斷核
本章小結
習題
第5章數字系統的高級設計與綜合
5.1Verilog編程風格
5.1.1邏輯推理
5.1.2陷阱
5.1.3設計組織
5.1.4針對XilinxFPGA的HDL編碼
5.2綜合最佳化
5.2.1速度與面積
5.2.2資源共享
5.2.3流水線、重新定時和暫存器平衡
5.2.4有限狀態機編譯
5.3數字系統的同步設計
5.3.1同步設計基本原理
5.3.2建立和保持時間
5.3.3時序例外約束
5.3.4同步設計中的異步問題
5.4數字系統的綜合
5.4.1數字系統綜合概述
5.4.2系統級綜合
5.4.3高級綜合
5.4.4暫存器傳輸級綜合
5.4.5邏輯級綜合
本章小結
習題
第6章FPGADSP系統設計
6.1DSP基礎
6.1.1DSP的基本概念
6.1.2FPGA實現DSP的特點
6.2DSP硬核的結構與使用
6.2.1輸入和輸出連線埠
6.2.2DSP48E1模組的操作
6.2.3輸入連線埠邏輯電路
6.2.4輸出連線埠邏輯
6.3FPGA設計DSP技術
6.3.1浮點數與定點數的表示與轉換
6.3.2採樣周期的設定
6.3.3SystemGenerator模組
6.3.4BlackBox模組
6.3.5ModelSim模組
6.3.6GatewayIn模組和GatewayOut模組
6.3.7Concat模組、Convert模組、Reinterpret模組和Slice模組
6.3.8模組通用屬性
6.4DSP48實現MAC
6.4.1利用XilinxBlockset設計12×8MAC
6.4.2利用Simulink仿真12×8MAC
6.4.3利用SystemGeneratorBlock產生代碼
6.4.4實現12×8MAC設計
6.4.5硬體協同仿真校驗設計
6.5設計FIR濾波器
6.5.1產生FIR濾波器的係數
6.5.2輸入FIR濾波器係數
6.5.3在Simulink中仿真FIR濾波器
6.5.4實現FIR濾波器
6.5.5連線演示板,通過Simulink仿真設計
6.6設計MACFIR濾波器
6.6.1分析係數
6.6.2添加控制邏輯並參數化
6.6.3添加雙口RAM
6.6.4在數據連線埠添加填充位和去填充位
6.6.5完成MACFIR設計
6.6.6用各種信源測試設計
6.6.7執行硬體在環路校驗
6.7VivadoHLS
6.7.1高級綜合的調度和裝配
6.7.2數據通道+控制器架構
6.7.3理解VivadoHLS
6.7.4高級綜合的最佳化方法
本章小結
習題
第7章嵌入式系統Zynq設計
7.1Zynq概述
7.2Zynq設計入門
7.2.1Vivado工程創建
7.2.2由Vivado創建Zynq嵌入式系統
7.2.3SDK應用程式編寫
7.3Zynq嵌入式系統調試方法
7.3.1Vivado硬體調試
7.3.2使用SDK進行Zynq調試
7.4調試Linux套用
7.4.1產生SDK軟體工作空間
7.4.2啟動超級終端
7.4.3添加和診斷軟體套用
本章小結
習題
第8章綜合設計實例
8.1實例一:基於VGA接口的設計實例
8.1.1設計任務
8.1.2原理分析與系統方案
8.2實例二:PS/2鍵盤編解碼演示系統
8.2.1設計任務
8.2.2原理分析與系統方案
8.2.3設計實現
8.3實例三:實現SOPC系統
8.3.1設計任務和方案
8.3.2實驗步驟
8.3.3實驗調試設備
本章小結
習題
附錄AEGO1用戶手冊
附錄BVerilogHDL(IEEE13642001)關鍵字表及說明
參考文獻