輕鬆學會FPGA設計與開發

輕鬆學會FPGA設計與開發
所屬類別
科技 >> 電工電子 >> 電子技術
作者:周新 主編 劉傑、張海潔 副主編
出版日期:2015年2月 書號:978-7-122-21004-3
開本:16K 787×1092 1/16 裝幀:平 版次:1版1次 頁數:285頁
本書從FPGA開發入門和工程實踐角度出發,深入淺出,逐步引導讀者學習FPGA設計所需的基礎理論基礎和工具套用。書中針對Verilog HDL的基礎語法進行了系統的介紹,對Verilog HDL中一些常接觸並容易出錯的概念進行了詳細說明。同時,書中還介紹了在數字電路設計中常用的EDA工具,全書內容介紹深入淺出,結合作者多年來使用Verilog HDL的心得體會和積累,列舉了豐富的設計實例,展現了許多仿真設計流程,全面總結和深入闡述了在Verilog HDL中一些設計技巧、設計理念,使讀者快速、全面地掌握FPGA的設計思路和設計細節。
本書適合廣大電路設計開發人員閱讀,也可作為相關專業師生的教材。
目錄
第一章Verilog HDL設計入門1
第一節Verilog HDL語言概述1
第二節數字電路設計方法簡介3
一、布爾方程設計3
二、原理圖的設計3
三、硬體描述語言3
第三節Verilog HDL與VHDL對比4
第四節Verilog HDL與C語言對比5
第二章Verilog HDL基本語法9
第一節Verilog HDL注釋及格式9
一、注釋說明9
二、書寫格式9
第二節Verilog HDL標識符9
第三節關鍵字10
第四節常量11
一、數字常量11
二、字元串13
三、其他13
第五節數據類型13
一、線網類型14
二、暫存器類型15
三、參數型(parameter)16
第六節運算符16
一、算術運算符17
二、等式運算符18
三、關係運算符19
四、邏輯運算符19
五、移位運算符20
六、位運算符20
七、位拼接運算符22
八、縮減運算符22
九、條件運算符23
十、賦值運算符23
第七節運算符的優先權23
第三章Verilog HDL基本語句25
第一節連續賦值語句26
一、預設連續賦值26
二、預設線網聲明26
第二節單元塊語句27
一、順序塊beginend27
二、forkjoin語句28
第三節條件語句30
一、ifelse語句30
二、case語句32
三、條件語句使用要點35
第四節循環語句37
一、forever語句37
二、repeat語句37
三、while語句38
四、for語句38
五、循環語句對比舉例39
第五節過程語句40
一、always語句40
二、initial語句42
第四章Verilog HDL的模組化設計和描述方式44
第一節Verilog HDL的模組結構44
一、模組聲明44
二、Verilog HDL的模組例化45
三、模組的使用要點46
第二節Verilog HDL的描述方式概述47
第三節結構描述47
一、門級結構描述48
二、單元模組例化的結構描述52
三、UDP的結構描述53
第四節數據流描述56
第五節行為描述57
第六節混合建模58
第五章函式、任務和編譯命令59
第一節函式和任務59
一、函式59
二、任務60
第二節任務和函式間的區別62
第三節系統函式和系統任務62
一、$display任務63
二、$write任務64
三、$monitor任務64
第六章數字電路基礎74
第一節組合邏輯74
一、組合邏輯電路概述74
二、幾種基本組合邏輯電路設計75
三、幾種常用組合電路設計80
四、組合邏輯電路設計要點95
第二節組合邏輯電路中的競爭冒險98
一、競爭冒險98
二、競爭冒險的產生98
三、競爭冒險的避免98
第三節時序邏輯99
一、時序邏輯電路概述99
二、幾種基本時序電路設計99
第四節時序邏輯電路中的建立時間和保持時間116
第七章狀態機118
第一節狀態機概述與分類118
一、狀態機概述118
二、狀態機分類118
第二節狀態機設計要點122
一、有限狀態機的設計流程122
二、有限狀態機的設計要點122
三、狀態機的描述方法124
第八章仿真132
第一節仿真概述132
第二節Testbench133
第三節仿真中的延時描述133
一、延時的表示方法133
二、路徑延遲聲明specify134
第四節Testbench設計與使用要點134
一、Testbench設計134
二、Testbench使用要點137
第五節仿真實例138
一、 組合邏輯電路仿真實例138
二、 時序電路仿真實例141
第九章EDA的設計流程及設計工具145
第一節EDA的設計實現流程145
一、設計輸入145
二、綜合146
三、功能仿真146
四、布局布線146
五、時序仿真146
六、編程下載146
七、線上調試146
八、板級測試146
第二節EDA常用設計工具匯總147
一、常用工具匯總一覽表147
二、HDL前端輸入與系統管理軟體147
三、HDL邏輯綜合軟體148
四、仿真軟體148
第三節推薦工具——文本編輯器gVim148
一、gVim概述148
二、下載和安裝149
三、gVim 73的界面和功能介紹150
四、gVim常用快捷鍵和功能152
第四節推薦工具——ModelSim仿真工具154
一、ModelSim概述154
二、安裝154
三、界面介紹——選單欄155
四、界面介紹——工具列160
五、界面介紹——工作區160
六、界面介紹——控制台160
七、仿真流程161
第十章Verilog HDL設計經驗166
第一節數據類型定義規則166
一、模組內部定義的變數數據類型定義規則166
二、模組連線埠數據類型定義規則166
第二節可綜合的基礎語法169
一、可綜合的Verilog HDL結構169
二、可綜合設計的要點170
第三節ifelse與case語句的使用分析170
第四節阻塞賦值與非阻塞賦值分析174
一、“=”阻塞賦值174
二、“<=”非阻塞賦值174
三、舉例說明174
四、阻塞和非阻塞的使用要點179
第五節模組層次化設計180
一、結構層次化設計180
二、模組劃分的技巧180
第六節復位方式的分析181
一、概述181
二、同步復位181
三、異步復位182
四、異步復位、同步釋放的復位方式185
第七節同步時序設計的重要性187
一、異步時序設計187
二、同步時序設計187
第八節如何提高系統速度188
一、提高系統時鐘188
二、提高系統運行效率189
第一節語法練習實例198
一、簡單組合邏輯電路設計198
二、簡單時序電路設計199
三、用always塊設計組合邏輯電路199
四、簡單狀態機設計200
第二節Verilog HDL入門設計實例201
一、點亮LED燈設計201
二、閃爍LED燈設計202
三、流水燈設計202
四、按鍵控制不同燈的亮滅設計203
五、有源蜂鳴器電路設計205
六、數碼管動態掃描顯示設計206
七、步進電機控制電路設計209
八、數字秒表設計211
九、搶答器設計216
第三節Verilog HDL進階設計實例225
一、串口通信225
二、紅外遙控進階實驗設計237
三、利用DS1302晶片進行電子表設計247
四、利用18B20晶片進行簡易溫度計設計265
參考文獻286

相關詞條

熱門詞條

聯絡我們