本書由至芯科技教研組從各大高校的授課內(nèi)容中整理而來,是為初學(xué)者量身定制的FPGA入門教材,從基礎(chǔ)的軟件安裝、工具使用、語法解釋、設(shè)計方法、常用IP,到最后的設(shè)計技巧及大量的進(jìn)階實例,內(nèi)容環(huán)環(huán)相扣,為初學(xué)者建立了一個比較清晰的學(xué)習(xí)路徑。“設(shè)計思路及方法”為本書的重點強(qiáng)調(diào)內(nèi)容,它作為一條主線貫穿始終。初學(xué)者只有掌握了正確的學(xué)習(xí)和設(shè)計方法,才能在數(shù)字邏輯設(shè)計領(lǐng)域越走越遠(yuǎn)。本書沒有收錄過多煩瑣的理論,一切從實戰(zhàn)出發(fā),按照一套相對高效的設(shè)計方法直接切入一個個小的實例。本書內(nèi)容由淺入深,適合作為可編程邏輯器件初學(xué)者的入門和進(jìn)階教材,也適合作為電子信息、計算機(jī)等專業(yè)的本科生、研究生,以及具有一定電子專業(yè)知識背景的電子工程師的參考用書。
至芯科技在之前幾年,一直處于高速發(fā)展階段,作為國內(nèi)fpga專業(yè)人才培訓(xùn)的品牌,至芯科技將一如既往地堅持在教學(xué)一線中,為遍布在全國各地的高校學(xué)員提供統(tǒng)一、標(biāo)準(zhǔn)的專業(yè)培訓(xùn)解決方案,更好地助力學(xué)習(xí)道路上的成長,全力推動其在專業(yè)領(lǐng)域內(nèi)的專業(yè)發(fā)展!至芯科技教研組為至芯科技公司的教材研發(fā)團(tuán)隊,長期工作在教學(xué)一線,擁有豐富的實戰(zhàn)經(jīng)驗。
第1章 沒有金剛鉆,不攬瓷器活 1
1.1 Quartus II 19.1——易學(xué)易用的編譯器 1
1.2 ModelSim——獨具慧眼的仿真工具 8
1.3 級聯(lián)調(diào)試實戰(zhàn)演練 8
第2章 諄諄教誨莫相忘,字字珠璣記心頭 30
2.1 賦值語句實戰(zhàn)演練 30
2.1.1 非阻塞型過程賦值語句 30
2.1.2 阻塞型過程賦值語句 32
2.2 關(guān)系運(yùn)算符實戰(zhàn)演練 34
2.2.1 關(guān)系運(yùn)算符的種類 34
2.2.2 關(guān)系運(yùn)算符與算術(shù)運(yùn)算符優(yōu)先級 34
2.3 if-else與case語句實戰(zhàn)演練 35
2.3.1 if-else條件分支語句 35
2.3.2 case分支控制語句 39
2.4 縮減運(yùn)算符實戰(zhàn)演練 41
2.5 移位運(yùn)算符實戰(zhàn)演練 44
2.6 位拼運(yùn)算符實戰(zhàn)演練 46
第3章 工欲善其事,必先利其器 49
3.1 計數(shù)器實戰(zhàn)演練 49
3.1.1 設(shè)計原理 49
3.1.2 代碼說明 50
3.1.3 仿真分析 51
3.2 呼吸燈實戰(zhàn)演練 51
3.2.1 設(shè)計原理 51
3.2.2 系統(tǒng)框架 52
3.2.3 代碼說明 53
3.2.4 仿真分析 55
第4章 磨刀不誤砍柴工,層次設(shè)計立頭功 57
4.1 層次化設(shè)計實戰(zhàn)演練 57
4.1.1 項目需求 57
4.1.2 系統(tǒng)架構(gòu) 58
4.1.3 模塊設(shè)計 58
4.1.4 代碼說明 59
4.1.5 仿真分析 62
4.1.6 驗證分析 63
4.2 分頻器設(shè)計實戰(zhàn)演練 73
4.2.1 偶分頻設(shè)計 73
4.2.2 奇分頻設(shè)計 75
第5章 內(nèi)涵豐富本領(lǐng)多,誰與IP核爭鋒 79
5.1 鎖相環(huán)實戰(zhàn)演練 79
5.1.1 項目需求 80
5.1.2 操作步驟 80
5.1.3 模塊設(shè)計 84
5.1.4 代碼說明 85
5.1.5 仿真分析 86
5.1.6 使用Locked信號 87
5.2 ROM實戰(zhàn)演練 89
5.2.1 項目需求 90
5.2.2 操作步驟 90
5.2.3 模塊設(shè)計 94
5.2.4 代碼說明 95
5.2.5 仿真分析 97
5.3 RAM實戰(zhàn)演練 98
5.3.1 項目需求 98
5.3.2 操作步驟 98
5.3.3 模塊設(shè)計 101
5.3.4 代碼說明 101
5.3.5 仿真分析 105
5.4 FIFO實戰(zhàn)演練 106
5.4.1 項目需求 106
5.4.2 操作步驟 106
5.4.3 模塊設(shè)計 109
5.4.4 代碼說明 111
5.4.5 仿真分析 116
5.5 移位寄存器實戰(zhàn)演練 117
5.5.1 項目需求 117
5.5.2 操作步驟 118
5.5.3 模塊設(shè)計 120
5.5.4 代碼說明 121
5.5.5 仿真分析 125
第6章 基礎(chǔ)項目我在行,信手拈來顯聰慧 126
6.1 邊沿檢測電路實戰(zhàn)演練 126
6.1.1 電路原理分析 126
6.1.2 系統(tǒng)框架 127
6.1.3 代碼說明 128
6.1.4 仿真分析 130
6.2 按鍵消抖實戰(zhàn)演練 130
6.2.1 設(shè)計思路 131
6.2.2 系統(tǒng)框架 131
6.2.3 代碼說明 132
6.2.4 仿真分析 135
6.3 二進(jìn)制數(shù)轉(zhuǎn)BCD實戰(zhàn)演練 136
6.3.1 逐步移位法原理 136
6.3.2 設(shè)計任務(wù) 137
6.3.3 系統(tǒng)框架 137
6.3.4 代碼說明 139
6.3.5 仿真分析 141
6.4 數(shù)碼管實戰(zhàn)演練 142
6.4.1 項目需求 142
6.4.2 單個數(shù)碼管顯示 144
6.4.3 6個數(shù)碼管顯示 147
6.5 綜合項目實戰(zhàn)演練 154
6.5.1 項目要求 154
6.5.2 各模塊的功能說明 154
6.5.3 RTL視圖 154
6.5.4 仿真分析 155
第7章 沒有標(biāo)準(zhǔn)的方法,但見可行的技巧 156
7.1 異步復(fù)位同步釋放實戰(zhàn)演練 156
7.1.1 同步復(fù)位和異步復(fù)位 156
7.1.2 異步復(fù)位同步釋放 159
7.2 流水線實戰(zhàn)演練 166
7.2.1 流水線的基本概念 166
7.2.2 流水線的應(yīng)用實例 167
7.3 狀態(tài)機(jī)實戰(zhàn)演練 173
7.3.1 狀態(tài)機(jī)的基本概念 173
7.3.2 狀態(tài)機(jī)的應(yīng)用實例 175
第8章 進(jìn)階首選我當(dāng)前,乘勝追擊勢必行 184
8.1 TLC549實戰(zhàn)演練 184
8.1.1 設(shè)計原理 184
8.1.2 系統(tǒng)架構(gòu) 186
8.1.3 模塊功能 186
8.1.4 代碼說明 187
8.1.5 仿真分析 195
8.2 TLC5620實戰(zhàn)演練 195
8.2.1 設(shè)計原理 195
8.2.2 系統(tǒng)架構(gòu) 199
8.2.3 模塊功能 199
8.2.4 代碼說明 200
8.2.5 仿真分析 207
8.3 VGA實戰(zhàn)演練 207
8.3.1 設(shè)計原理 207
8.3.2 系統(tǒng)框架 211
8.3.3 代碼說明 211
8.3.4 仿真分析 216
8.4 串口通信實戰(zhàn)演練 216
8.4.1 設(shè)計原理 216
8.4.2 系統(tǒng)架構(gòu) 218
8.4.3 代碼說明 219
8.4.4 仿真分析 228
8.5 DDS實戰(zhàn)演練 228
8.5.1 數(shù)據(jù)生成 228
8.5.2 代碼說明 229
8.5.3 仿真分析 231
8.6 蜂鳴器實戰(zhàn)演練 232
8.6.1 設(shè)計原理 232
8.6.2 數(shù)據(jù)生成 233
8.6.3 系統(tǒng)架構(gòu) 235
8.6.4 代碼說明 235
8.7 I2C實戰(zhàn)演練 242
8.7.1 設(shè)計原理 242
8.7.2 系統(tǒng)架構(gòu) 243
8.7.3 代碼說明 243
8.7.4 仿真分析 256