本書結合作者多年工作經驗,系統地介紹了FPGA/CPLD的基本設計方法。在介紹FPGA/CPLD概念的基礎上,介紹了Intel主流FPGA/CPLD的結構與特點,并通過豐富的實例講解Quartus II與ModelSim、Synplify Pro等常用EDA工具的開發流程。
本書所有實例的完整工程、源代碼和使用說明文件,都以云存儲的方式存放在云端,讀者可以通過掃描二維碼的方式進行下載。
本書可作為高等院校通信工程、電子工程、計算機、微電子與半導體等專業的教材,也可作為硬件工程師和IC工程師的實用工具書。
Intel公司審校,Intel資-深FAE傾力打造,權v的Intel器件類圖書
Intel公司推薦FPGA/CPLD培訓教材
深入討論Intel FPGA/CPLD設計和優化技巧
掃碼下載所有實例的完整工程、源代碼和使用說明文件
王誠:西安電子科技大學/通信與電子信息系統/碩士 高-級工程師 Lattice公司中國區總經理,工作經驗豐富研究領域:擴頻通信、CDMA通信、3G基帶設計、FPGA/數字ASIC設計、優化、驗證取得成果:兩項WCDMA實現技術專利發明人,在一級期刊上發表多篇CDMA技術論文,發表數篇國內外FPGA/ASIC設計技術研討會論文,編寫圖書《FPGA/CPLD設計工具──Xilinx ISE 使用詳解》、《Altera FPGA/CPLD設計(基礎篇)》、《Altera FPGA/CPLD設計(高-級篇)》 王江宏 西北工業大學 通信與信息系統專業 碩士研究生 畢業后先后加入中興通訊 上海貝爾 Altera Intel工作 主要從事無線通信設備技術研發, FPGA ARM技術支持。
第1章 FPGA/CPLD簡介1
1.1 可編程邏輯設計技術簡介1
1.1.1 可編程邏輯器件發展簡史1
1.1.2 可編程邏輯器件分類2
1.2 FPGA帶來的優勢2
1.3 FPGA/CPLD的基本結構3
1.3.1 FPGA的基本結構3
1.3.2 CPLD的基本結構7
1.3.3 FPGA和CPLD的比較9
1.4 FPGA/CPLD的設計流程10
1.5 FPGA/CPLD的常用開發工具14
1.6 下一代可編程邏輯設計技術展望18
1.6.1 下一代可編程邏輯器件硬件上的四大發展趨勢18
1.6.2 下一代EDA軟件設計方法發展趨勢23
1.7 小結27
1.8 問題與思考27
第2章 Altera FPGA/CPLD的結構28
2.1 Altera高密度FPGA28
2.1.1 主流高端FPGA──Stratix V E/GX/GT/GS28
2.1.2 內嵌10Gbit/s高速串行收發器的FPGA──Stratix IV GT50
2.1.3 內嵌高速串行收發器的中端FPGA──ArriaII GX53
2.2 Altera低成本FPGA53
2.3 Altera的CPLD器件59
2.4 小結62
2.5 問題與思考62
第3章 Altera Quartus II開發流程63
3.1 Quartus II軟件綜述63
3.1.1 Quartus II軟件的功能63
3.1.2 Quartus II軟件的用戶界面65
3.2 設計輸入68
3.2.1 設計輸入方式70
3.2.2 設計規劃71
3.2.3 設計輸入文件實例71
3.2.4 設計約束73
3.3 綜合79
3.3.1 使用Quartus II軟件集成綜合79
3.3.2 控制綜合79
3.3.3 綜合實例84
3.3.4 第三方綜合工具85
3.4 布局布線86
3.4.1 設置布局布線參數86
3.4.2 布局布線實例90
3.4.3 增量布局布線91
3.4.4 反標保留分配91
3.5 仿真92
3.5.1 建立矢量源文件92
3.5.2 仿真實例95
3.6 編程與配置96
3.6.1 建立編程文件96
3.6.2 器件編程和配置98
3.7 案例分析:濾波器的設計100
3.7.1 第1個濾波器100
3.7.2 第2個濾波器:插入流水103
3.7.3 第3個濾波器:對稱結構105
3.7.4 第4個濾波器:脈動濾波器(Systolic Filter)106
3.7.5 第5個濾波器:對稱反向結構脈動濾波器107
3.7.6 案例總結109
3.8 小結109
3.9 問題與思考109
第4章 Altera的IP工具110
4.1 IP的概念和Altera的IP110
4.1.1 IP的概念110
4.1.2 Altera可提供的IP111
4.1.3 Altera IP在設計中的作用113
4.2 使用Altera的基本宏功能114
4.2.1 定制基本宏功能115
4.2.2 實現基本宏功能119
4.2.3 設計實例122
4.3 使用Altera的IP核125
4.3.1 定制IP核125
4.3.2 實現IP核129
4.3.3 設計實例130
4.4 小結131
4.5 問題與思考131
第5章 Quartus II的常用輔助設計工具132
5.1 I/O分配驗證132
5.1.1 I/O分配驗證功能簡介133
5.1.2 I/O分配驗證流程133
5.1.3 用于I/O分配驗證的輸入136
5.1.4 運行I/O分配驗證137
5.2 功率分析139
5.2.1 Excel-based功率計算器139
5.2.2 Simulation-based功率估算141
5.3 RTL閱讀器142
5.3.1 RTL閱讀器簡介142
5.3.2 RTL閱讀器用戶界面143
5.3.3 原理圖的分頁和模塊層次的切換144
5.3.4 過濾原理圖145
5.3.5 將原理圖中的節點定位到源設計文件147
5.3.6 在原理圖中查找節點或網線147
5.3.7 使用RTL閱讀器分析設計中的問題148
5.4 SignalProbe及SignalTap II邏輯分析器148
5.4.1 SignalProbe148
5.4.2 SignalTap II151
5.5 時序收斂平面布局規劃器(Timing Closure Floorplan)157
5.5.1 使用Timing Closure Floorplan分析設計158
5.5.2 使用Timing Closure Floorplan優化設計164
5.6 Chip Editor底層編輯器164
5.6.1 Chip Editor功能簡介164
5.6.2 使用Chip Editor的設計流程165
5.6.3 Chip Editor視圖166
5.6.4 資源特性編輯器168
5.6.5 Chip Editor的一般應用172
5.7 工程更改管理(ECO)172
5.7.1 ECO簡介173
5.7.2 ECO的應用范圍173
5.7.3 ECO的操作流程174
5.7.4 使用Change Manager查看和管理更改175
5.7.5 ECO驗證176
5.8 小結176
5.9 問題與思考176
第6章 編程與配置177
6.1 配置Altera FPGA177
6.1.1 配置方式177
6.1.2 主動串行(AS)183
6.1.3 被動串行(PS)186
6.1.4 快速被動并行(FPP)188
6.1.5 被動并行異步(PPA)189
6.1.6 JTAG配置方式191
6.1.7 ByteBlaster II下載電纜192
6.1.8 配置芯片194
6.2 配置文件和軟件支持194
6.2.1 軟件支持194
6.2.2 配置文件196
6.3 單板設計及調試注意事項199
6.3.1 配置的可靠性200
6.3.2 單板設計要點200
6.3.3 調試建議201
6.4 小結203
6.5 問題與思考203
第7章 第三方EDA工具204
7.1 第三方EDA工具綜述204
7.1.1 NativeLink與WYSIWYG204
7.1.2 3種EDA工具的使用流程205
7.1.3 Quartus II支持的第三方工具205
7.2 仿真的概念與ModelSim仿真工具207
7.2.1 仿真簡介207
7.2.2 仿真的切入點208
7.2.3 ModelSim仿真工具的不同版本210
7.2.4 ModelSim的圖形用戶界面210
7.2.5 ModelSim的基本仿真步驟221
7.2.6 使用ModelSim進行功能仿真226
7.2.7 使用ModelSim進行時序仿真230
7.2.8 ModelSim仿真工具高級應用232
7.3 綜合的概念與Synplify/Synplify Pro綜合工具242
7.3.1 Synplify/Synplify Pro的功能與特點242
7.3.2 Synplify Pro的用戶界面248
7.3.3 Synplify Pro綜合流程251
7.3.4 Synplify Pro的其他綜合技巧272
7.4 小結284
7.5 問題與思考284