本書介紹了FPGA的發(fā)展及應用前景,基于Altera公司的FPGA開發(fā)芯片,介紹了Quartus Ⅱ軟件和FPGA的開發(fā)使用流程,以及Verilog HDL的語法、語句等編程入門知識,同時,以項目化開發(fā)形式設計了數(shù)字電路基礎實驗、開發(fā)板基礎實驗、開發(fā)板進階實驗、通信系統(tǒng)實驗、綜合實驗等FPGA開發(fā)例程。本書適合電子、通信、自動化等相關專業(yè)的本科生與研究生學習,以及從事FPGA開發(fā)、IC設計、PCB設計等相關職業(yè)的讀者閱讀參考。
(1)本書內(nèi)容由簡單到復雜,從軟件使用到Verilog語言語法語句,設計例程深入淺出,滿足廣大FPGA設計者的學習需求。實驗例程是經(jīng)過實驗板驗證通過,圖文并茂展示真實地展示給讀者,經(jīng)得起推敲,避免誤導讀者。(2)硬件描述語言選擇verilog HDL,因為現(xiàn)在很多人都用的是verilog,因為它與C語言更接近,入門更容易。美國和中國臺灣地區(qū)邏輯電路設計和制造廠家大都以Verilog HDL 為主,中國大陸地區(qū)目前學習使用verilog的也很多。從學習的角度來看,Verilog HDL比較簡單,也與C 語言較接近,容易掌握。從使用的角度,支持Verilog 硬件描述語言的半導體廠家也較支持VHDL 的多。
FPGA為何物?如果 FPGA對我們來說是一片空白,可以說是一張白紙,任憑我們在上面揮毫潑墨,那么,只要我們的想象夠豐富、基礎夠扎實,我們一定會繪出屬于自己的一片藍圖。為什么將本書名定為《FPGA設計與項目化開發(fā)實戰(zhàn)》?那是因為編者回顧自己的學習之路,發(fā)現(xiàn)自己曾經(jīng)缺乏一些連貫的學習資料和系統(tǒng)的學習方法,為了讓更多的人少走彎路而積累總結了很多資料,希望通過一個個簡單的例子以點帶面,讓讀者逐步掌握 FPGA 的設計要領,并通過綜合實戰(zhàn)將理論與 FPGA 的硬件實現(xiàn)相結合。本書不僅僅是實驗手冊,更是理論與實踐相結合的 FPGA 設計手冊,圖文并茂,有助于讀者一步步走好FPGA 設計之路。本書主要講解FPGA的開發(fā)流程和程序設計,以一款資源豐富的FPGA開發(fā)板為例,介紹FPGA內(nèi)部結構和設計流程,講解及FPGA開發(fā)板的硬件配置Verilog HDL硬件描述語言的基礎知識,,重點是第7章到第12章的實例程序,由簡單到復雜,*后附上FPGA設計心得。本書適合電子、通信、自動化等相關專業(yè)的本科生與研究生,以及從事FPGA 開發(fā)、IC 設計、PCB 設計等相關職業(yè)的讀者閱讀參考。
第1章FPGA概述/1
1.1可編程邏輯器件的發(fā)展史/1
1.2FPGA簡介/2
1.3FPGA的特點及應用領域/3
1.4FPGA發(fā)展前景/5
第2章開發(fā)軟件的安裝與使用/7
2.1Quartus Ⅱ軟件安裝/7
2.2USBBlaster驅動安裝/10
2.3Vivado軟件介紹/12
2.4Vivado軟件安裝/13
2.5Vivado軟件的使用/15
第3章FPGA原理和結構/22
3.1FPGA技術原理/22
3.2FPGA芯片結構/23
3.3軟核、硬核及固核的概念/26
第4章FPGA的開發(fā)流程/27
4.1設計輸入/27
4.2設計編譯/32
4.3仿真驗證/33
4.4引腳鎖定/44
4.5下載調(diào)試驗證/44
第5章FPGA開發(fā)板/48
5.1FPGA開發(fā)板簡介/48
5.2FPGA開發(fā)板硬件資源詳細配置/50
5.3FPGA開發(fā)板硬件原理圖/51
第6章Verilog HDL基礎知識/65
6.1Verilog HDL設計模塊的基本結構/65
6.2Verilog HDL的詞法/70
6.3Verilog HDL的語句/80
6.4不同抽象級別的Verilog HDL模型/105
6.5Verilog HDL設計流程/113
6.6Verilog HDL仿真/116
6.7代碼編寫規(guī)范/122
第7章數(shù)字電路基礎實驗/125
7.1分頻器的設計及其Quartus Ⅱ仿真/125
7.2計數(shù)器的設計及其波形仿真/130
7.3D觸發(fā)器的設計及其波形仿真/132
7.4三態(tài)門的設計及其波形仿真/133
7.58-3編碼器的設計及其波形仿真/134
7.68-3優(yōu)先編碼器的設計及其功能仿真/136
7.73-8譯碼器的設計及其功能仿真/139
7.8移位寄存器/141
7.9多路選擇器的設計及其功能仿真/142
7.10串行加法器的設計及其功能仿真/144
7.11簡單運算單元的設計及功能仿真/144
第8章開發(fā)板基礎實驗/147
8.1LED流水燈/147
8.2按鍵消抖/152
8.3PWM 控制LED的亮暗/156
8.4數(shù)碼管的動態(tài)顯示/160
8.5秒表數(shù)碼管顯示/163
8.6時鐘數(shù)碼管顯示/169
8.7頻率計的設計/174
8.8蜂鳴器音樂播放器/181
8.9按鍵計數(shù)器/185
8.10串口通信/187
8.11LCD1602 顯示/196
8.12DDS與嵌入式邏輯分析儀的調(diào)用/206
8.13步進電動機控制實驗/217
8.14矩陣鍵盤控制實驗/224
8.15旋轉編碼開關實驗/235
第9章宏功能模塊的使用/240
9.1PLL的使用/240
9.2FIFO 的使用/244
9.3RAM 的使用/246
9.4乘法器的使用/250
第10章開發(fā)板進階實驗/252
10.1AD_TLC549 采集電壓表/252
10.2DA_TLC5615 電壓輸出/259
10.3IIC協(xié)議與AT24C02讀寫實驗/266
10.4VGA顯示控制/280
10.5LCD12864 顯示字符/288
10.6LCD12864 顯示圖形/296
10.7紅外遙控接收解碼/305
10.8DS18B20溫度采集/313
10.9超聲波測距/319
10.10PCF8563實時時鐘設計/324
10.11LM75A溫度采集/333
10.12DS1302實時時鐘/344
第11章基于FPGA的通信系統(tǒng)實驗/359
11.1偽隨機信號發(fā)生器/359
11.22ASK調(diào)制/360
11.32FSK調(diào)制/362
11.42PSK調(diào)制/363
11.52DPSK調(diào)制/365
第12章綜合實驗/368
12.1基于 DDS 的任意波形發(fā)生器/368
12.2基于 FPGA 的出租車計費器設計/369
12.3基于 FPGA 的交通燈設計/374
12.4基于FPGA的通信信號源的設計/380
12.5SDRAM控制器設計/382
第13章學習FPGA技術總結/408