●章現代數字繫統設計概論
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可重配置加速堆棧
1.5.4自適應計算加速平臺
本章小結
習題
第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.2Verilog HDL程序的基本結構
3.2.1模塊結構分析
3.2.2模塊的實例化
3.3Verilog HDL詞法、數據類型和運算符
3.3.1詞法約定
3.3.2數據類型
3.3.3運算符
3.4Verilog HDL行為語句
3.4.1賦值語句
3.4.2順序塊和並行塊語句
3.4.3結構說明語句
3.4.4條件語句
3.4.5循環語句
3.4.6繫統任務和繫統函數
3.4.7編譯預處理命令
3.4.8Verilog HDL可綜合設計
3.5Verilog HDL設計舉例
3.5.1組合電路設計
3.5.2時序電路設計
3.5.3數字繫統設計
3.5.4數碼管掃描顯示電路
3.5.5LED通用異步收發電路設計
3.6Testbenc件與設計
本章小結
習題
第4章Vivado設計工具
4.1Vivado工具概述
4.1.1單一的、共享的、可擴展的數據模型
4.1.2標準化XDC約束文件——SDC
4.1.3多維度分析布局器
4.1.4IP封裝器、集成器和目錄
4.1.5Vivado HLS
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針對linx FPGA的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章綜合設計實例
6.1實例一: 鍵盤輸入電路設計
6.1.1PS/2通信協議
6.1.2PS/2接口設計
6.1.3鍵盤輸入程序
6.2實例二: VGA顯示電路設計
6.2.1設計任務
6.2.2原理分析與繫統方案
6.2.3彩條顯示
6.2.4Logo的VGA顯示
6.3實例三: 俄羅斯方塊遊戲設計
6.3.1繫統組成
6.3.2數據通道
6.3.3
6.3.4按鍵輸入處理模塊
6.3.5顯示部分
實例四: 五子棋人機對弈遊戲設計
.1gobang_top
.2gobang_datapath
.3gobang_logic
.4gobang_strategy
.5score_calculater
.6win_checker
.7輸出顯示
習題
附錄AEGO1用戶手冊
A.1概述
A.2FPGA
A.3板卡供電
A.4繫統時鐘
FPGA配置
A.6通用I/O接口
A.6.1按鍵
A.6.2開關
A.6.3LED
A.七段數碼管
A.7VGA接口
A.8音頻接口
A.9USB-UART/JTAG接口
A.10USB轉PS2接口
A.11SRAM接口
A.12模擬電壓輸入
A.13DAC輸出接口
A.14藍牙模塊
A.15通用擴展I/O
附錄BVerilog HDL(IEEE 13-2001)關鍵詞表及說明
參考文獻