前言
第一章 Xilins 元件概述
1.1 可程式邏輯元件基礎
1.1.1 可程式邏輯元件的基本情況
1.1.2 可程式邏輯元件的發展歷史
1.1.3 PLD 開發工具
1.1.4 典型FPGA 開發流程
1.2 Xilinx FPGA 晶片
1.2.1 FPGA 的工作原理
1.2.2 Xilinx FPGA 晶片結構
1.2.3軟核、硬核及固核
1.2.4Xilinx主流FPGA
1.3Xilinx軟體工具
1.3.1ISE Foundation軟體
1.3.2EDK開發工具
1.3.3System Generator DSP工具
1.3.4ChipScope Pro
1.3.5PlanAhead
1.4本書案例驗證平臺--S6 CARD開發板
1.4.1S6 CARD開發板的組成與功能
1.4.2S6 CARD板卡引腳約束說明
本章小結
第2章Verilog HDL開發基礎與進階
2.1Verilog HDL語言
2.1.1Verilog HDL語言的歷史
2.1.2Verilog HDL的主要功能
2.1.3Verilog HDL和VHDL的區別
2.1.4Verilog HDL設計方法
2.2Verilog HDL基本程式結構
2.3Verilog HDL語言的資料類型和運算符
2.3.1標誌符
2.3.2資料類型
2.3.3模組埠
2.3.4常量集合
2.3.5運算符和運算式
2.4Verilog HDL語言的描述語句
2.4.1結構描述形式
2.4.2資料流程描述形式
2.4.3行為描述形式
2.4.4混合設計模式
2.5Verilog HDL建模與調試技巧
2.5.1雙向埠的使用和仿真
2.5.2阻塞賦值與非阻塞賦值
2.5.3輸入值不確定的組合邏輯電路
2.5.4數學運算中的擴位與截位操作
2.5.5利用塊RAM來實現資料延遲
2.5.6測試向量的生成
2.6Verilog HDL常用程式示例
2.6.1數位電路中基本單元的FPGA實現
2.6.2基本時序處理模組
2.7Xilinx器件原語的使用
本章小結
第3章Xilinx FPGA電路原理與系統設計
3.1FPGA配置電路
3.1.1Xilinx FPGA配置電路
3.1.2Xilinx FPGA常用的配置引腳
3.1.3Xilinx FPGA配置電路分類
3.2JTAG電路的原理與設計
3.2.1JTAG電路的工作原理
3.2.2Xilinx JTAG下載線
3.3FPGA的常用配置電路
3.3.1主串模式--最常用的FPGA配置模式
3.3.2SPI串列Flash配置模式
3.3.3從串配置模式
3.3.4主位元組寬度並行配置模式
3.3.5JTAG配置模式
3.3.6System ACE配置方案
3.4iMPACT軟體使用
3.4.1iMPACT軟體
3.4.2iMPACT中的JTAG配置操作
3.4.3iMPACT中的Xilinx PROM配置操作
3.4.4iMPACT中的SPI Flash配置操作
3.4.5FPGA配置失敗的常見問題
3.5從配置PROM中讀取用戶資料
3.5.1從PROM中引導數據
3.5.2硬體電路設計方法
3.5.3軟體操作流程
本章小結
第4章基於ISE Foundation的邏輯設計
4.1ISE套件
4.1.1ISE的特點
4.1.2ISE的功能
4.1.3ISE的安裝
4.1.4ISE的用戶介面
4.2基於ISE的設計輸入
4.2.1新建工程
4.2.2代碼輸入
4.2.3代碼範本的使用
4.2.4Xilinx IP Core的原理與應用
4.3ISE基本操作
4.3.1基於Xilinx XST的綜合
4.3.2基於ISim的仿真
4.3.3基於ISE的實現
4.3.4基於目標和策略的設計方法
4.3.5基於SmartGuide的設計方法
4.3.6比特檔的生成
4.3.7基於IMPACT的晶片配置
4.3.8功耗分析以及XPower的使用
4.4約束
4.4.1約束檔
4.4.2UCF檔的語法說明
4.4.3引腳和區域約束語法
4.4.4時序約束語法
4.5調試利器--ChipScope Pro
4.5.1ChipScope Pro工作原理
4.5.2ChipScope Pro操作流程
4.5.3ChipScope Pro開發實例
4.6ISE與第三方EDA軟體
4.6.1ModelSim軟體的使用
4.6.2ModelSim和ISE的聯合開發流程
4.6.3MATLAB軟體的使用
4.6.4ISE與MATLAB的聯合使用
4.6.5MATLAB、ModelSim和ISE聯合開發實例
本章小結
第5章時序分析
5.1時序分析的作用和原理
5.1.1時序分析的作用
5.1.2靜態時序分析原理
5.1.3時序分析的基礎知識
5.2Xilinx FPGA中的時鐘資源
5.2.1全局時鐘資源
5.2.2第二全局時鐘資源
5.3ISE時序分析器
5.3.1時序分析器的特點
5.3.2時序分析器的文件類型
5.3.3時序分析器的調用與用戶介面
5.3.4提高時序性能的手段
本章小結
第6章邏輯開發專題
6.1Verilog HDL設計進階
6.1.1面向硬體的程式設計思維
6.1.2“面積”和“速度”的轉換原則
6.1.3同步電路的設計原則
6.2Xilinx FPGA晶片底層單元的使用
6.2.1Xilinx全局時鐘網路的使用
6.2.2CMT時鐘管理模組的使用
6.2.3Xilinx內嵌塊記憶體的使用
6.2.4硬核乘加器的使用
6.3代碼風格
6.3.1代碼風格的含義
6.3.2代碼書寫風格
6.3.3通用設計代碼風格
6.3.4Xilinx專用設計代碼風格
6.4UART介面開發實例
6.4.1串口介面與RS232協議
6.4.2串口通信控制器的Verilog HDL實現
6.4.3RS232設計板級調試
本章小結
第7章基於EDK的嵌入式系統設計
7.1可配置嵌入式系統(EDK)
7.1.1基於FPGA的可編程嵌入式開發系統
7.1.2Xilinx公司的解決方案
7.2Xilinx嵌入式開發系統組成
7.2.1片內微處理器軟核MicroBlaze
7.2.2PLB匯流排系統結構
7.2.3IP核以及設備驅動
7.3EDK軟體
7.3.1EDK設計的實現流程
7.3.2EDK的文件管理架構
7.4XPS軟體典型操作
7.4.1XPS的啟動
7.4.2利用BSB創建新工程
7.4.3XPS的用戶介面
7.4.4XPS的目錄結構與硬體平臺
7.4.5在XPS加入IP Core
7.4.6XPS工程的綜合與實現
7.5SDK軟體典型操作
7.5.1SDK的用戶介面
7.5.2SDK的典型操作
7.5.3IP外設的API函數查閱和使用方法
7.5.4GPIO外設開發實例
7.5.5其他外設開發實例
本章小結
第8章基於System Generator的DSP系統設計
8.1System Generator的特點與安裝
8.1.1System Generator的主要特點
8.1.2System Generator的安裝和配置
8.2System Generator的使用基礎
8.2.1System Generator開發流程
8.2.2Simulink的應用
8.3基於System Generator的DSP系統設計
8.3.1System Generator的應用
8.3.2System Generator中的信號類型
8.3.3自動代碼生成
8.3.4編譯MATLAB設計生成FPGA代碼
8.3.5子系統的建立與ISE調用
8.4基於System Generator的硬體協仿真
8.4.1硬體協仿真平臺的特點與平臺安裝
8.4.2硬體協仿真的基本操作
8.4.3共用記憶體的操作
8.5System Generator的高級應用
8.5.1導入外部的HDL程式模組
8.5.2設計線上調試
8.5.3系統中的多時鐘設計
8.5.4FPGA設計的高級技巧
本章小結
第9章數位信號處理專題
9.1數位信號
9.1.1數位信號的產生
9.1.2採樣定理
9.1.3數位系統的主要性能指標
9.1.4A/D轉換的字長效應
9.2常用DSP IP Core及其應用
9.2.1DDS模組IP Core的應用
9.2.2FFT演算法IP Core的應用
9.2.3Cordic演算法IP Core的應用
9.2.4FIR濾波器IP Core的應用
9.3多速率濾波器的FPGA實現
9.3.1多速率信號處理的意義
9.3.2多速率信號濾波器的基本操作
9.3.3CIC濾波器的FPGA實現
9.3.4HB濾波器的FPGA實現
本章小結
第10章SERDES技術專題
10.1高速資料連接功能
10.1.1高速資料傳輸
10.1.2Xilinx公司高速連接功能的解決方案
10.2實現吉比特高速串列I/O的相關技術
10.2.1吉比特高速串列I/O的特點和應用
10.2.2吉比特串列I/O系統的組成
10.2.3吉比特串列I/O的設計要點
10.3Rocket I/O收發器原理與開發
10.3.1Rocket I/O硬核組成與工作原理
10.3.2GTP硬核組成與工作原理
10.3.3GTP Wizard開發實例
10.4PCIExpress G1端點介面設計
10.4.1PCI Express G1技術
10.4.2Xilinx PCI Express G1端點模組
10.4.3PCI Express G1端點介面實例解讀