目錄
第1章 FPGA晶元及板卡介紹
1.1 FPGA技術發展及基本架構
1.1.1 FPGA的發展
1.1.2 FPGA內部結構
1.2 國內FPGA技術發展情況
1.3 紫光同創FPGA晶元介紹
1.3.1 Logos系列FPGA概述
1.3.2 Logos系列FPGA產品特性
1.3.3 Logos系列FPGA資源規模與封裝信息
1.3.4 Logos系列FPGA模塊介紹
1.3.5 Logos系列FPGA參考資料
1.4 ALINX FPGA板卡介紹
第2章 Pango Design Suite開發環境
2.1 安裝Pango Design Suite軟體
2.1.1 安裝步驟
2.1.2 License關聯
2.2 PDS工程
2.2.1 創建工程
2.2.2 Verilog代碼編寫
2.2.3 添加UCE約束
2.2.4 生成位流文件
2.3 菜單欄介紹
2.4 User Constraint Editor簡介
2.4.1 UCE啟動
2.4.2 UCE主界面功能
2.4.3 Timing Constraints界面
2.4.4 Attribute表格界面
2.4.5 Device界面
2.5 ADS綜合工具簡介
2.5.1 ADS Flow概述
2.5.2 ADS綜合的基本操作
2.5.3 ADS綜合網表分析
2.6 PDS軟體中的IP調用
2.6.1 啟動IPC
2.6.2 主控窗口
2.6.3 參數配置窗口
2.7 在線分析儀的使用
2.7.1 下載電纜
2.7.2 Debugger連接
2.7.3 Fabric Debugger說明
2.8 PDS軟體技巧與經驗總結
2.8.1 Synthesize參數設置
2.8.2 PNR參數設置
2.8.3 常見報錯分析與處理方法
第3章 Verilog HDL語法
3.1 Verilog簡介
3.2 數據類型
3.2.1 常量
3.2.2 變數
3.3 運算符
3.3.1 算術運算符
3.3.2 賦值運算符
3.3.3 關係運算符
3.3.4 邏輯運算符
3.3.5 條件運算符
3.3.6 位運算符
3.3.7 移位運算符
3.3.8 拼接運算符
3.3.9 優先順序
3.4 組合邏輯
3.4.1 與門
3.4.2 或門
3.4.3 非門
3.4.4 異或
3.4.5 比較器
3.4.6 半加器
3.4.7 全加器
3.4.8 乘法器
3.4.9 數據選擇器
3.4.10 3-8解碼器
3.4.11 三態門
3.5 時序邏輯
3.5.1 D觸發器
3.5.2 兩級D觸發器
3.5.3 帶非同步複位D觸發器
3.5.4 帶非同步複位同步清零D觸發器
3.5.5 移位寄存器
3.5.6 單口RAM
3.5.7 偽雙口RAM
3.5.8 真雙口RAM
3.5.9 單口ROM
3.5.10 有限狀態機
3.6 總結
第4章 Verilog HDL數字電路設計
4.1 基於格雷碼編碼器的設計
4.1.1 簡介
4.1.2 實驗原理
4.1.3 程序代碼
4.1.4 驗證結果
4.2 非同步清零加法器設計
4.2.1 簡介
4.2.2 實驗原理
4.2.3 程序代碼
4.2.4 驗證結果
4.3 七段數碼管顯示電路的設計
4.3.1 簡介
4.3.2 實驗原理
4.3.3 程序代碼
4.3.4 驗證結果
4.4 四位並行乘法器的設計
4.4.1 簡介
4.4.2 實驗原理
4.4.3 程序代碼
4.4.4 驗證結果
4.5 基本觸發器的設計
4.5.1 簡介
4.5.2 實驗原理
4.5.3 程序代碼
4.5.4 驗證結果
4.6 四位全加器設計
4.6.1 簡介
4.6.2 實驗原理
4.6.3 程序代碼
4.6.4 驗證結果
4.7 表決器的設計
4.7.1 簡介
4.7.2 實驗原理
4.7.3 程序代碼
4.7.4 驗證結果
4.8 搶答器的設計
4.8.1 簡介
4.8.2 實驗原理
4.8.3 程序代碼
4.8.4 驗證結果
4.9 序列檢測器的設計
4.9.1 簡介
4.9.2 實驗原理
4.9.3 程序代碼
4.9.4 驗證結果
4.10 數字頻率計的設計
4.10.1 簡介
4.10.2 實驗原理
4.10.3 程序代碼
4.10.4 驗證結果
4.11 數字鍾的設計
4.11.1 簡介
4.11.2 實驗原理
4.11.3 程序代碼
4.11.4 驗證結果
第5章 Testbench及其模擬
5.1 Testbench設計
5.1.1 Testbench簡介
5.1.2 Testbench的搭建
5.2 ModelSim 介紹及模擬
5.2.1 ModelSim簡介
5.2.2 ModelSim模擬
5.3 PDS與ModelSim聯合模擬
第6章 Logos的常用IP
6.1 RAM說明
6.1.1 RAM簡介
6.1.2 RAM IP介紹
6.1.3 RAM I/O框圖
6.1.4 RAM I/O引腳說明
6.1.5 RAM時序模型
6.1.6 RAM IP配置
6.1.7 RAM IP例化
6.2 ROM說明
6.2.1 ROM簡介
6.2.2 ROM IP介紹
6.2.3 ROM I/O框圖
6.2.4 ROM I/O引腳說明
6.2.5 ROM 時序模型
6.2.6 ROM IP配置
6.2.7 ROM IP例化
6.3 FIFO說明
6.3.1 FIFO簡介
6.3.2 FIFO IP介紹
6.3.3 FIFO I/O框圖
6.3.4 FIFO I/O引腳說明
6.3.5 FIFO 時序模型
6.3.6 FIFO IP配置
6.3.7 FIFO IP例化
6.4 PLL鎖相環
6.4.1 PLL簡介
6.4.2 PLL IP介紹
6.4.3 PLL I/O框圖
6.4.4 PLL I/O引腳說明
6.4.5 PLL IP配置
6.4.6 PLL IP例化
6.5 IP的導入與更新
6.6 DDR IP 介紹
6.6.1 DDR IP簡介
6.6.2 DDR IP系統框圖
6.6.3 DDR I/O框圖
6.6.4 DDR I/O引腳說明
6.6.5 DDR IP配置
6.6.6 DDR IP例化
6.7 HSST IP介紹
6.7.1 HSST IP簡介
6.7.2 HSST I/O介面
第7章 基礎實驗
7.1 LED流水燈
7.1.1 實驗原理
7.1.2 程序解讀
7.1.3 Flash程序固化
7.2 按鍵消抖程序設計
7.2.1 簡介
7.2.2 實驗原理
7.2.3 程序解讀
7.3 串口程序設計
7.3.1 簡介
7.3.2 實驗原理
7.3.3 程序解讀
7.4 HDMI顯示程序設計
7.4.1 簡介
7.4.2 實驗原理
7.4.3 程序解讀
7.5 DDR3存儲程序設計
7.5.1 簡介
7.5.2 實驗原理
7.5.3 程序解讀
第8章 進階實驗
8.1 攝像頭採集顯示設計
8.1.1 簡介
8.1.2 實驗原理
8.1.3 程序解讀
8.2 數碼相框顯示設計
8.2.1 簡介
8.2.2 實驗原理
8.2.3 程序解讀
8.3 模數採集設計
8.3.1 簡介
8.3.2 實驗原理
8.3.3 程序解讀
8.4 千兆乙太網通信設計
8.4.1 簡介
8.4.2 實驗原理
8.4.3 程序解讀
8.5 HSST通信設計
8.5.1 簡介
8.5.2 實驗原理
8.5.3 程序解讀
第9章 綜合實驗
9.1 基於FPGA的邏輯分析儀設計
9.1.1 簡介
9.1.2 實驗原理
9.1.3 程序解讀
9.2 攝像頭採集傳輸顯示系統設計
9.2.1 簡介
9.2.2 實驗原理
9.2.3 程序解讀
第10章 基於Pango Cortex-M1軟核的程序開發
10.1 Cortex-M1軟核簡介
10.2 Pango Cortex-M1軟核設計
10.2.1 簡介
10.2.2 功能描述
10.2.3 介面列表
10.2.4 介面時序
10.2.5 參考設計
10.2.6 參考設計文件目錄
10.2.7 參考設計模擬
10.2.8 參考設計上板驗證
10.3 Cortex-M1應用工程設計
10.3.1 簡介
10.3.2 工程模板
10.4 Hello World
10.4.1 簡介
10.4.2 實驗原理
10.5 LED流水燈實驗
10.5.1 簡介
10.5.2 實驗原理
10.6 用戶中斷實驗
10.6.1 簡介
10.6.2 實驗原理
10.7 SPI介面讀寫實驗
10.7.1 簡介
10.7.2 實驗原理
10.8 串口收發實驗
10.8.1 簡介
10.8.2 實驗原理
10.9 I2C實驗
10.9.1 簡介
10.9.2 實驗原理
10.10 綜合實驗
10.10.1 簡介
10.10.2 實驗原理
參考文獻