FPGA開發及應用(微課版)
張偉 洪雲飛
相關主題
商品描述
本書結合當前高等院校學生的理論基礎和軟件操作水平,較為全面地介紹了FPGA開發與設計中典型邏輯電路模塊的設計、設計輔助工具的使用以及相關外圍電路的應用。全書共分為8個項目,案例主要來源於企業典型案例和電子設計競賽。項目1、項目2以“計數器”FPGA設計核心和關鍵切入點電路作為入門,分別以原理圖法和Verilog HDL代碼兩種方法實現;項目3以分頻計數顯示系統為載體,先介紹了業內應用最為廣泛的ModelSim仿真軟件的使用,然後介紹了“分頻器”這一典型同步電路,為後續項目和任務做鋪墊;項目4~項目8共5個綜合項目,原則上不嚴格區分先後順序。 本書可以作為高等院校電子信息類和集成電路類專業的FPGA課程或EDA課程的教材,特別適合作為全國大學生電子設計競賽中信號類題目的競賽培訓參考資料,並適合電子大類專業的開發人員和廣大愛好者自學使用。
作者簡介
張偉,男,中共黨員,西安航空職業技術學院電子信息工程技術教研室主任。主要研究方向為GPS和北鬥基帶信號處理及電路實現方法,主授課程有《信號與系統》《FPGA實訓》《嵌入式系統開發應用》等。近9年指導學生參加全國大學生電子設計競賽,獲得國家一等獎一項,省級獎項十余項。
目錄大綱
目錄
項目1
原理圖法實現典型邏輯電路的設計 1
任務1.1 原理圖法實現一位全加器 2
任務導入 2
1.1.1 【知識準備】Quartus Prime設計電路基本流程 2
1.1.2 【任務實施】層次化設計實現一位全加器 31
任務1.2 原理圖法實現十六進制計數器 35
任務導入 35
1.2.1 【知識準備】十六進制計數器原理與器件準備 35
1.2.2 【任務實施】十六進制計數器設計與驗證 40
任務1.3 原理圖法實現十進制計數
顯示器 43
任務導入 43
1.3.1 【知識準備】十進制計數器原理與器件準備 43
1.3.2 【任務實施】十進制計數器顯示設計與驗證 49
知識拓展 51
思考與練習 53
實戰演練 53
項目2
典型邏輯電路的Verilog
HDL設計 54
任務2.1 Verilog HDL實現四位
加法器 55
任務導入 55
2.1.1 【知識準備】結構化描述和數據流
描述方式 55
2.1.2 【任務實施】結構化描述和數據流描述方式實現四位加法器 74
任務2.2 Verilog HDL實現十進制
計數器 77
任務導入 77
2.2.1 【知識準備】行為級描述方式和混合描述方式 78
2.2.2 【任務實施】混合描述方式實現十進制計數器 97
知識拓展 102
思考與練習 105
實戰演練 105
項目3
分頻計數顯示綜合系統 107
任務3.1 第三方仿真軟件ModelSim的仿真 108
任務導入 108
3.1.1 【知識準備】第三方仿真軟件ModelSim 108
3.1.2 【任務實施】ModelSim仿真計數器的實施方法 111
任務3.2 通用分頻器的設計與驗證 124
任務導入 124
3.2.1 【知識準備】分頻器的
設計思路 124
3.2.2 【任務實施】通用分頻器電路
設計與驗證 125
任務3.3 分頻計數顯示綜合系統設計 135
任務導入 135
3.3.1 【知識準備】綜合系統
設計方法 135
3.3.2 【任務實施】分頻計數顯示綜合系統設計與驗證 142
任務3.4 時序分析與時序約束 146
任務導入 146
3.4.1 【知識準備】Cyclone系列
FPGA電路中的典型延時 146
3.4.2 【任務實施】Quartus Prime時序約束的實施 154
思考與練習 158
實戰演練 159
項目4
高速信號發生器 160
任務4.1 基於通用分頻器的高速信號
發生器 161
任務導入 161
4.1.1 【知識準備】基於通用分頻器的高速信號發生器設計分析 162
4.1.2 【任務實施】基於通用分頻器的高速信號發生器設計實施 170
任務4.2 基於IP核的高速信號
發生器 180
任務導入 180
4.2.1 【知識準備】Altera IP核介紹 181
4.2.2 【任務實施】基於PLL IP核的高速信號發生器的設計
實施 183
4.2.3 【任務實施2】基於ROM IP核的高速信號發生器的設計實施 189
任務4.3 基於NCO IP核設計高精度
信號發生器 195
任務導入 195
4.3.1 【知識準備】NCO IP核介紹 196
4.3.2 【任務實施】基於NCO IP核設計高精度信號發生器設計實施 198
思考與練習 204
實戰演練 204
項目5
信號幅值測量顯示儀 205
任務5.1 幅值測量電路設計 207
任務導入 207
5.1.1 【知識準備】幅值測量電路設計分析 207
5.1.2 【任務實施】幅值測量電路設計與仿真 217
任務5.2 SignalTap輔助分析電路 221
任務導入 221
5.2.1 【知識準備】SignalTap簡介 221
5.2.2 【任務實施】SignalTap分析幅值測量電路 224
任務5.3 動態數碼管驅動電路設計與
驗證 235
任務導入 235
5.3.1 知識準備 動態數碼管設計
分析 235
5.3.2 【任務實施1】ISSP輔助數碼管驅動電路設計實施 243
5.3.3 【任務實施2】動態數碼管邏輯資源優化 247
思考與練習 253
實戰演練 253
項目6
信號頻率測量顯示儀 254
任務6.1 脈沖信號的測頻顯示
電路設計 256
任務導入 256
6.1.1 【知識準備】常見測頻
方法介紹 256
6.1.2 【任務實施】數字信號測頻電路設計與驗證 270
任務6.2 正弦信號的測頻顯示電路
設計 278
任務導入 278
6.2.1 【知識準備】正弦信號頻率測量設計分析 278
6.2.2 【任務實施】正弦波測頻顯示設計與驗證 282
思考與練習 283
實戰演練 284
項目7
基於VGA的液晶顯示屏
示波器 285
任務7.1 VGA彩條顯示 287
任務導入 287
7.1.1 【知識準備】VGA彩條顯示設計分析 287
7.1.2 【任務實施】VGA彩條顯示電路設計與驗證 294
任務7.2 VGA固定采樣率簡易
示波器 298
任務導入 298
7.2.1 【知識準備】VGA顯示ADC采集波形設計分析 298
7.2.2 【任務實施】VGA固定采樣率簡易示波器設計與驗證 303
任務7.3 VGA任意采樣率簡易
示波器 307
任務導入 307
7.3.1 【知識準備】基於FIFO的VGA任意采樣率簡易示波器設計
分析 307
7.3.2 【任務實施】VGA任意采樣率簡易示波器設計與驗證 314
思考與練習 316
實戰演練 316
項目8
自動飲料售賣機交互系統 317
任務8.1 按鍵檢測顯示電路設計 319
任務導入 319
8.1.1 【知識準備】按鍵檢測顯示電路
設計分析 319
8.1.2 【任務實施1】按鍵檢測電路
設計與驗證 323
8.1.3 【任務實施2】按鍵提示音電路設計 326
任務8.2 自動飲料售賣機——狀態機設計與驗證 328
任務導入 328
8.2.1 【知識準備】狀態機相關知識 329
8.2.2 【任務實施】自動飲料售賣機人機交互綜合系統設計與
驗證 338
思考與練習 340
實戰演練 340