IntelFPGA權威設計指南:基於QuartusPrimePro19集成開發環境

IntelFPGA權威設計指南:基於QuartusPrimePro19集成開發環境

《IntelFPGA權威設計指南:基於QuartusPrimePro19集成開發環境》是2020年3月電子工業出版社出版的圖書,作者是何賓。

基本介紹

  • 中文名:IntelFPGA權威設計指南:基於QuartusPrimePro19集成開發環境
  • 作者:何賓
  • 出版時間:2020年3月
  • 出版社電子工業出版社
  • 頁數:820 頁
  • ISBN:9787121382444
  • 定價:199 元 
  • 開本:16 開
  • 字數:1312千字
  • 版次:01-01
內容簡介,圖書目錄,

內容簡介

本書以Intel公司的Quartus Prime Pro 19集成開發環境與Intel新一代可程式邏輯器件Cyclone 10 GX為軟體和硬體平台,系統地介紹了可程式邏輯器件的原理和Quartus Prime Pro集成開發環境的關鍵特性。全書共11章,內容主要包括Intel Cyclone 10 GX FPGA結構詳解、Quartus Prime Pro HDL設計流程、Quartus Prime Pro塊設計流程、Quartus Prime Pro定製IP核設計流程、Quartus Prime Pro命令行腳本設計流程、Design Space Explorer II設計流程、Quartus Prime Pro系統調試原理及實現、Quartus Prime Pro時序和物理約束原理及實現、Quartus Prime Pro中HDL高級設計方法、Quartus Prime Pro部分可重配置原理及實現,以及Intel高級綜合工具原理及實現方法。

圖書目錄

目 錄
第 章 Intel Cyclone 10 GX FPGA 結構詳解1
1.1 邏輯陣列塊和自適應邏輯塊1
1.1.1 ALM結構和功能1
1.1.2 LUT的工作模式2
1.1.3 暫存器和鎖存器12
1.1.4 LAB的互聯架構21
1.1.5 分散式存儲器22
1.2 存儲器塊32
1.2.1 嵌入式存儲器塊設計指導32
1.2.2 存儲器塊打包模式34
1.2.3 地址時鐘使能35
1.2.4 存儲器塊異步清除35
1.2.5 存儲器塊糾錯碼35
1.2.6 使用M20K實現RAM36
1.3 時鐘網路和相位鎖相環40
1.3.1 時鐘網路類型40
1.3.2 時鐘資源功能43
1.3.3 層次化時鐘結構45
1.3.4 時鐘控制塊47
1.3.5 時鐘功耗控制50
1.3.6 相位鎖相環52
1.4 I/O塊58
1.4.1 I/O組的排列59
1.4.2 I/O電氣標準60
1.4.3 I/O架構和特性62
1.4.4 可程式的IOE特性65
1.4.5 片上端接67
1.4.6 SERDES和DPA67
1.5 DSP塊70
1.5.1 DSP塊特性71
1.5.2 DSP塊資源71
1.5.3 DSP塊架構72
1.5.4 DSP塊套用72
1.6 外部存儲器接口78
1.6.1 外部存儲器接口特性79
1.6.2 外部存儲器接口I/O引腳80
1.6.3 器件封裝支持的存儲器接口80
1.6.4 外部存儲器接口架構82
1.7 配置技術87
1.7.1 AS配置89
1.7.2 PS配置94
1.7.3 FPP配置97
1.7.4 JTAG配置106
1.7.5 配置流程108
1.8 電源管理110
1.8.1 功耗110
1.8.2 可程式電源技術110
1.8.3 電源感測線111
1.8.4 片上電壓感測器111
1.8.5 溫度感測二極體112
1.8.6 上電/斷電順序要求112
第 章 Quartus Prime Pro HDL 設計流程113
2.1 Quartus Prime Pro及組件的下載、安裝和授權113
2.1.1 下載Quartus Prime Pro及組件113
2.1.2 安裝Quartus Prime Pro及組件117
2.1.3 授權Quartus Prime Pro及組件118
2.2 Quartus Prime Pro功能和特性121
2.3 Quartus Prime Pro設計流程122
2.3.1 處理流程框架122
2.3.2 增量最佳化的概念125
2.3.3 超感知設計流程125
2.4 建立新的設計工程128
2.5 添加新的設計檔案134
2.6 設計的分析和綜合處理137
2.6.1 分析和綜合的概念137
2.6.2 分析和綜合的屬性選項140
2.6.3 分析和綜合的實現147
2.6.4 查看分析和綜合的結果149
2.7 設計的行為級仿真155
2.7.1 使用Verilog HDL生成測試向量的仿真155
2.7.2 使用波形檔案生成測試向量的仿真161
2.8 設計的約束165
2.8.1 通過GUI指定約束的方法165
2.8.2 使用Tcl腳本約束設計的方法166
2.8.3 在Assignment Editor中添加約束條件172
2.8.4 在Pin Planner中添加約束條件174
2.8.5 I/O分配分析178
2.8.6 添加簡單的時序約束條件180
2.9 設計的適配184
2.9.1 適配器設定選項184
2.9.2 適配的實現189
2.9.3 查看適配後的結果190
2.10 查看時序分析結果196
2.10.1 時序分析的基本概念196
2.10.2 時序路徑和時鐘分析197
2.10.3 時鐘建立分析200
2.10.4 時鐘保持分析201
2.10.5 恢復和去除分析202
2.10.6 多周期路徑分析203
2.10.7 亞穩態分析206
2.10.8 時序悲觀207
2.10.9 時鐘作為數據分析208
2.10.10 多角時序分析209
2.10.11 時序分析的實現210
2.11 功耗分析原理和實現217
2.11.1 功耗分析器輸入218
2.11.2 功耗分析器設定220
2.11.3 節點和實體分配222
2.11.4 執行功耗分析223
2.12 生成編程檔案226
2.12.1 裝配器選項屬性設定226
2.12.2 可程式檔案類型232
2.12.3 運行裝配器工具232
2.12.4 生成PROM檔案233
2.13 下載設計239
2.13.1 下載設計到FPGA239
2.13.2 編程串列Flash存儲器241
第 章 Quartus Prime Pro 塊設計流程243
3.1 基於塊的設計介紹243
3.1.1 與塊設計有關的術語243
3.1.2 設計塊重用介紹244
3.1.3 基於塊的增量編譯介紹246
3.2 設計方法學介紹247
3.2.1 自頂向下設計方法學介紹247
3.2.2 自底向上設計方法學介紹247
3.2.3 基於團隊的設計方法學介紹248
3.3 設計分區249
3.3.1 為外圍IP、時鐘和PLL規劃分區250
3.3.2 設計分區指導251
3.3.3 保留和重用分區快照251
3.3.4 創建設計分區252
3.4 設計分區重用流程255
3.4.1 重用核心分區256
3.4.2 重用根分區263
3.4.3 保留核心實體重新綁定269
3.5 增量塊設計流程270
3.5.1 增量的時序收斂270
3.5.2 設計抽象及實現272
3.5.3 空分區時鐘源保留273
3.6 設計塊重用和基於塊增量編譯的組合273
3.7 建立基於團隊的設計274
3.7.1 為基於團隊的設計創建一個頂層工程274
3.7.2 為工程集成準備一個設計分區277
3.8 自底向上的設計考慮278
第 章 Quartus Prime Pro定製IP 核設計流程279
4.1 Platform Designer工具功能介紹279
4.1.1 Platform Designer支持的接口279
4.1.2 元件結構280
4.1.3 元件檔案組織281
4.1.4 元件版本281
4.1.5 IP元件的設計周期281
4.2 調用Platform Designer工具282
4.3 創建定製元件IP核285
4.3.1 指定IP元件類型285
4.3.2 創建/指定用於綜合和仿真的HDL檔案286
4.4 創建通用元件IP核298
4.5 對定製元件IP核進行驗證309
4.6 對通用元件IP核進行驗證310
4.6.1 添加頂層原理圖檔案310
4.6.2 修改user_define.v檔案312
4.6.3 添加generic_component_0.v檔案314
4.7 IP核生成輸出(Quartus Prime Pro版本)315
第 章 Quartus Prime Pro命令行腳本設計流程317
5.1 工具命令語言317
5.2 Quartus Prime Tcl包317
5.3 Quartus Prime Tcl API Help319
5.3.1 命令行選項321
5.3.2 Quartus Prime Tcl控制台視窗323
5.4 端到端的設計流程323
5.4.1 建立新的設計工程325
5.4.2 添加新的設計檔案325
5.4.3 添加設計約束條件326
5.4.4 設計綜合329
5.4.5 設計適配330
5.4.6 設計裝配(生成編程檔案)331
5.4.7 報告331
5.4.8 時序分析333
5.5 自動腳本執行335
5.5.1 執行例子336
5.5.2 控制處理336
5.5.3 顯示訊息337
5.6 其他腳本337
5.6.1 自然匯流排命名337
5.6.2 短選項名字337
5.6.3 集合命令337
5.6.4 Node Finder命令339
5.6.5 get_names命令354
5.6.6 post_message命令356
5.6.7 訪問命令行參數356
5.6.8 quartus() Array358
5.7 tclsh shell359
5.8 Tcl腳本基礎知識359
5.8.1 Intel FPGA COOL的例子359
5.8.2 變數359
5.8.3 替換360
5.8.4 算術360
5.8.5 列表361
5.8.6 數組361
5.8.7 控制結構362
5.8.8 過程(子程式或函式)363
5.8.9 檔案I/O363
第 章 Design Space Explorer II 設計流程365
6.1 啟動DSE II工具365
6.2 DSE II工具介紹366
6.2.1 Project頁面366
6.2.2 Setup頁面367
6.2.3 Exploration頁面369
6.2.4 Status頁面373
6.3 在本地計算機上探索不同的實現策略373
6.4 在遠程計算機上探索不同的實現策略377
6.4.1 創建一個Azure賬戶378
6.4.2 下載PuTTY相關工具378
6.4.3 選擇Intel FPGA工具379
6.4.4 創建和配置虛擬機380
6.4.5 配置和啟動PuTTY工具388
6.4.6 捕獲虛擬機上的GUI界面391
6.4.7 打開Quartus Prime軟體393
6.4.8 終止虛擬機395
6.4.9 持久存儲和數據傳輸396
6.4.10 搭建和配置許可證伺服器397
6.4.11 連線到許可證伺服器406
6.4.12 在虛擬機上運行DSE II407
第 章 Quartus Prime Pro系統調試原理及實現411
7.1 系統調試工具概述411
7.1.1 系統調試工具組合411
7.1.2 用於監視RTL節點的工具414
7.1.3 具有激勵功能的工具416
7.1.4 Virtual JTAG Interface Intel FPGA IP核417
7.1.5 系統級調試結構417
7.1.6 SLD JTAG橋418
7.1.7 部分重配置設計調試422
7.2 使用Signal Tap邏輯分析儀的設計調試422
7.2.1 軟體和硬體要求423
7.2.2 Signal Tap邏輯分析儀的特性和優點423
7.2.3 Signal Tap邏輯分析儀任務流程概述424
7.2.4 創建新的調試工程426
7.2.5 添加FIFO IP核427
7.2.6 添加頂層設計檔案430
7.2.7 配置Signal Tap邏輯分析儀432
7.2.8 編譯設計463
7.2.9 編程目標器件或器件467
7.2.10 運行邏輯分析儀468
7.2.11 查看、分析和使用捕獲的數據472
7.3 使用Signal Probe的快速設計驗證474
7.4 使用外部邏輯分析儀的系統內調試477
7.4.1 選擇邏輯分析儀477
7.4.2 為邏輯分析儀接口定義參數479
7.4.3 將LAI檔案引腳映射到可用的I/O引腳480
7.4.4 將內部信號映射到LAI組480
7.4.5 編譯Quartus Prime工程481
7.4.6 使用LAI編程Intel支持的器件482
7.4.7 運行時控制活動的組482
7.5 系統內修改存儲器和常量482
7.5.1 用系統記憶體儲器內容編輯器調試設計483
7.5.2 使能運行時修改設計中的實例483
7.5.3 用系統記憶體儲器內容編輯器編程器件484
7.5.4 將存儲器實例載入到ISMCE485
7.5.5 監視存儲器中的位置485
7.5.6 使用“Hex Editor”視窗編輯存儲器內容486
7.5.7 導入和導出存儲器檔案487
7.6 使用系統內源和探針的設計調試488
7.6.1 系統內源和探針的設計流程概述489
7.6.2 例化In-System Sources & Probes IP核490
7.6.3 編譯設計492
7.6.4 運行系統內源和探針編輯器492
7.6.5 用JTAG Chain Configuration編程器件493
7.6.6 “Instance Manager:”視窗494
7.6.7 In-System Sources and Probes Editor主界面494
7.6.8 In-System Sources and Probes Editor的Tcl命令495
第 章 Quartus Prime Pro時序和物理約束原理及實現497
8.1 SDC檔案的高級特性497
8.1.1 使用實體綁定的SDC檔案497
8.1.2 實體綁定的約束範圍498
8.1.3 實體綁定的約束實例498
8.2 創建時鐘和時鐘約束500
8.2.1 基本時鐘500
8.2.2 虛擬時鐘501
8.2.3 生成時鐘502
8.2.4 推導PLL時鐘507
8.2.5 創建時鐘組509
8.2.6 時鐘效應特性512
8.3 創建I/O約束515
8.3.1 設定輸入延遲(set_input_delay)515
8.3.2 設定輸出延遲(set_output_delay)516
8.4 創建偏移和延遲約束516
8.4.1 高級I/O時序和板布線模型延遲516
8.4.2 設定最大偏移(set_max_skew)517
8.4.3 設定網路延遲(set_net_delay)521
8.4.4 創建時序例外(異常)523
8.4.5 多周期例外的實例531
8.4.6 延遲註解550
8.4.7 約束設計分區連線埠550
8.5 使用適配器過約束551
8.6 接口規劃工具原理及套用552
8.6.1 接口規劃概述553
8.6.2 建立新的設計工程554
8.6.3 添加並配置外部存儲器接口IP核555
8.6.4 添加Avalon MMM BFM IP核563
8.6.5 在頂層檔案中例化IP核565
8.6.6 初始化Interface Planner567
8.6.7 用工程分配更新計畫568
8.6.8 規劃外圍布局568
8.6.9 報告布局數據573
8.6.10 驗證和導出規劃約束574
第 章 Quartus Prime Pro中HDL 高級設計方法576
9.1 綜合支持的HDL語言576
9.1.1 Verilog和SystemVerilog綜合支持576
9.1.2 VHDL綜合支持580
9.2 HDL支持的綜合屬性和命令581
9.2.1 Verilog HDL綜合屬性和命令581
9.2.2 VHDL綜合屬性和命令597
9.3 底層原語的使用614
9.3.1 底層I/O原語616
9.3.2 底層邏輯原語621
第 章 Quartus Prime Pro部分可重配置原理及實現628
10.1 部分可重配置基本概念628
10.1.1 部分可重配置術語629
10.1.2 部分可重配置過程式列629
10.1.3 內部主設備部分可重配置630
10.1.4 外部主設備部分可重配置632
10.1.5 部分可重配置設計注意事項632
10.2 部分可重配置基本流程的實現633
10.2.1 建立新的設計工程634
10.2.2 添加設計檔案634
10.2.3 創建設計分區637
10.2.4 為PR分區分配布局和布線區域639
10.2.5 添加部分可重配置控制器IP核642
10.2.6 定義角色644
10.2.7 創建修訂版645
10.2.8 編譯基本修訂版本647
10.2.9 準備PR實現修訂版648
10.2.10 編程器件650
10.3 層次化部分可重配置流程的實現652
10.3.1 建立新的設計工程652
10.3.2 添加設計檔案653
10.3.3 創建設計分區655
10.3.4 為PR分區分配布局和布線區域658
10.3.5 添加部分可重配置控制器IP核660
10.3.6 定義角色662
10.3.7 創建修訂版663
10.3.8 編譯基本修訂版本666
10.3.9 為父PR分區準備PR實現修訂版667
10.3.10 為子PR分區準備PR實現修訂版669
10.3.11 編程器件672
第 章 Intel高級綜合工具原理及實現方法673
11.1 高級綜合工具概論673
11.1.1 高級綜合工具的優勢673
11.1.2 高級綜合工具運行要求675
11.1.3 高級綜合工具的簡要流程675
11.1.4 HLS與OpenCL676
11.1.5 高級綜合工具編譯器細節676
11.2 高級綜合工具基本流程的實現680
11.2.1 構建C++模型和測試平台680
11.2.2 C和C++庫685
11.2.3 設定高級綜合編譯器690
11.2.4 運行高級綜合編譯器692
11.2.5 查看高級設計報告694
11.2.6 查看元件RTL仿真波形700
11.3 任意精度數據類型及最佳化702
11.3.1 元件中聲明ac_int數據類型703
11.3.2 調試ac_int數據類型的使用703
11.3.3 元件中聲明ac_fixed數據類型704
11.3.4 浮點編譯最佳化707
11.4 元件接口712
11.4.1 元件調用接口712
11.4.2 Avalon流接口715
11.4.3 Avalon存儲器映射的主接口721
11.4.4 Avlaon存儲器映射的從接口725
11.4.5 元件調用接口參數731
11.4.6 不穩定和穩定元件參數734
11.4.7 全局變數736
11.4.8 元件接口的結構體736
11.4.9 復位行為736
11.5 元件中的本地變數(存儲器屬性)737
11.5.1 編譯器元件存儲器屬性737
11.5.2 靜態變數761
11.6 元件中的循環762
11.6.1 循環啟動間隔(ii編譯指示)764
11.6.2 循環攜帶的依賴性(ivdep編譯指示)765
11.6.3 循環合併(loop_coalesce編譯指示)768
11.6.4 循環展開(unroll編譯指示)770
11.6.5 循環並發(max_concurrency編譯指示)773
11.7 元件並發性773
11.7.1 存儲空間或I/O的串列等效774
11.7.2 並行性控制774
附錄A C10-EDP-1硬體開發平台原理圖775
附錄B USB-Blaster下載器驅動故障排除方法790

熱門詞條

聯絡我們