內容簡介
本書使用Altera公司的CycloneⅣFPGA器件,由淺入深地引領讀者從板級設計、基礎入門實例、FPGA片內資源套用實例和綜合進階實例等方面,玩轉FPGA邏輯設計。本書基於特定的FPGA實驗平台,既有足夠的理論知識深度作支撐,也有豐富的例程供實踐學習,並且穿插了筆者在多年FPGA學習和開發過程中所積累的經驗和技巧。
無論對於希望快速掌握Verilog語言進行FPGA開發的初學者,還是希望快速掌握基於AlteraCycloneⅣFPGA進行開發的設計者,本書都是很好的選擇。
圖書目錄
第1章FPGA開發入門
1.1FPGA基礎入門
1.2FPGA的優勢在哪裡
1.3FPGA套用領域
1.4FPGA開發流程
第2章實驗平台“勇敢的芯”板級電路詳解
2.1板級電路整體架構
2.2電源電路
2.3復位與時鐘電路
2.3.1關於FPGA器件的時鐘
2.3.2關於FPGA器件的復位
2.3.3實驗平台電路解析
2.4FPGA下載配置電路
2.5SRAM接口電路
2.6ADC/DAC晶片電路
2.7UART接口電路
2.8RTC接口電路
2.94×4矩陣按鍵電路
2.10VGA顯示接口電路
2.11蜂鳴器、流水燈、數碼管、撥碼開關電路
2.12超音波接口、外擴LCD接口電路
第3章邏輯設計基礎
3.10和1——精彩世界由此開始
3.2表面現象揭秘——邏輯關係
3.3內里本質探索——器件結構
第4章軟體安裝與配置
4.1軟體下載和license申請
4.2Quartus Ⅱ與ModelSimAltera的安裝
4.3文本編輯器Notepad++安裝
4.4QuartusⅡ中使用Notepad++的關聯設定
4.5USBBlaster的驅動安裝
4.5.1Windows XP系統USBBlaster安裝
4.5.2在Windows 7系統安裝USBBlaster
4.5.3在Windows 8系統安裝USBBlaster
4.6串口晶片驅動安裝
4.6.1驅動安裝
4.6.2設備識別
第5章Verilog語法概述
5.1語法學習的經驗之談
5.2可綜合的語法子集
5.3代碼風格與書寫規範
勇敢的芯伴你玩轉Altera FPGA
第6章基於仿真的第一個工程實例
6.1新建工程
6.2Verilog源碼檔案創建與編輯
6.2.1Verilog源碼檔案創建
6.2.2Verilog源碼檔案編輯
6.3Verilog語法檢查
6.4ModelSim仿真驗證
6.4.1Quartus Ⅱ基本設定
6.4.2測試腳本創建與編輯
6.4.3測試腳本關聯設定
6.4.4調用ModelSim仿真
第7章基於板級調試的第二個工程實例
7.1PWM蜂鳴器驅動——功能概述
7.2PWM蜂鳴器驅動——引腳分配
7.3PWM蜂鳴器驅動——綜合、映射與配置檔案產生
7.4Altera FPGA配置方式
7.4.1概述
7.4.2配置方式
7.5PWM蜂鳴器驅動——FPGA線上下載配置
7.6PWM蜂鳴器驅動——FPGA配置晶片固化
7.7PWM蜂鳴器驅動——復位與FPGA重配置功能
第8章基礎入門實例
8.1蜂鳴器開關實例
8.1.1功能簡介
8.1.2代碼解析
8.1.3打開工程
8.1.4下載配置操作
8.2流水燈實例
8.2.1功能簡介
8.2.2代碼解析
8.2.3下載配置
8.338解碼器實例
8.3.1功能簡介
8.3.2代碼解析
8.3.3板級調試
8.4按鍵消抖與LED開關實例
8.4.1按鍵消抖原理
8.4.2功能簡介
8.4.3代碼解析
8.4.5板級調試
8.5經典模式流水燈實例
8.5.1功能簡介
8.5.2代碼解析
8.5.3板級調試
8.6基於PLL分頻計數的LED閃爍實例
8.6.1PLL概述
8.6.2功能簡介
8.6.3新建IP核檔案
8.6.4PLL配置
8.6.5模組化設計概述
8.6.6模組化設計實踐
8.6.7代碼解析
8.6.8板級調試
8.7數碼管驅動實例
8.7.1數碼管驅動原理
8.7.2功能概述
8.7.3代碼解析
8.7.4板級調試
8.8SRAM讀寫測試實例
8.8.1SRAM讀寫時序解讀
8.8.2功能簡介
8.8.3代碼解析
8.8.4仿真設定
8.8.5功能仿真
8.8.6FPGA線上配置
8.8.7觸發採樣波形
8.9UART loopback測試
8.9.1功能概述
8.9.2代碼解析
8.9.3板級調試
8.10VGA驅動ColorBar顯示實例
8.10.1VGA概述
8.10.2功能簡介
8.10.3代碼解析
8.10.4板級調試
8.11LCD基本驅動實例
8.11.1LCD驅動時序
8.11.2功能簡介
8.11.3代碼解析
8.11.4裝配
8.11.5板級調試
8.12LCD字元顯示驅動實例
8.12.1字元取模
8.12.2ROM初始化文檔創建
8.12.3新建源檔案
8.12.4ROM配置
8.12.5功能簡介
8.12.6代碼解析
8.12.7板級調試
8.13矩陣按鍵掃描檢測實例
8.13.1鍵盤概述
8.13.2矩陣按鍵工作原理
8.13.3功能概述
8.13.4代碼解析
8.13.5RTL Viewer
8.13.6State Machine Viewer
8.13.7Technology Map Viewer
8.13.8板級調試