Vivado從此開始(進階篇)

Vivado從此開始(進階篇)

《Vivado從此開始(進階篇)》是2020年電子工業出版社出版的圖書,作者是高亞軍。

基本介紹

  • 中文名:Vivado從此開始(進階篇)
  • 作者:高亞軍
  • 出版社:電子工業出版社
  • 出版時間:2020年1月1日
  • 頁數:224 頁
  • 定價:56 元 
  • 開本:16 開
  • 裝幀:平裝
  • ISBN:9787121373527
內容簡介,圖書目錄,

內容簡介

全書共七章,力圖幫助讀者了解Vivado 2018版本的新特性,同時理解並掌握UltraFast設計方法學。UltraFast方法學是實踐經驗的總結,涉及板級規劃、設計流程、代碼風格、時序約束、時序收斂等方面。本書重點圍繞後三個方面進行闡述。此外,針對被越來越廣泛使用的SSI器件,本書也介紹了相應的設計指南,例如,如何在早期進行設計規劃、如何對跨die信號進行處理、如何使用LAGUNA暫存器、如何對基於SSI器件的設計進行分析等。除此之外,作者也根據實踐經驗總結了一些常用的技巧,儘可能地幫助讀者提高工作效率。

圖書目錄

第1章 綜合階段 1
1.1 綜合設定分析 1
1.1.1 ?flatten_hierarchy 1
1.1.2 ?control_set_opt_threshold 2
1.1.3 ?no_lc 4
1.1.4 ?keep_equivalent_registers 4
1.1.5 ?resource_sharing 6
1.1.6 ?gated_clock_conversion 7
1.1.7 ?fanout_limit 9
1.1.8 ?shreg_min_size和?no_srlextract 10
1.1.9 ?fsm_extraction 13
1.2 綜合屬性分析 14
1.2.1 ASYNC_REG 14
1.2.2 MAX_FANOUT 16
1.2.3 SRL_STYLE和SHREG_EXTRACT 18
1.2.4 USE_DSP 21
1.2.5 RAM_STYLE和ROM_STYLE 23
1.2.6 EXTRACT_ENABLE和EXTRACT_RESET 24
1.2.7 MARK_DEBUG 26
1.3 模組化綜合技術 27
1.3.1 模組化綜合技術概述 27
1.3.2 模組化綜合技術的套用場景 29
1.4 OOC綜合方式 30
第2章 實現階段 33
2.1 實現階段的子步驟 33
2.2 關於邏輯最佳化 33
2.2.1 基本最佳化 33
2.2.2 最佳化MUX 34
2.2.3 最佳化LUT 34
2.2.4 最佳化移位暫存器 35
2.2.5 最佳化進位鏈 36
2.2.6 最佳化控制集 37
2.2.7 最佳化扇出 38
2.3 關於布局 38
2.4 關於物理最佳化 39
2.4.1 基本最佳化 39
2.4.2 互動式物理最佳化 39
2.5 關於布線 41
2.5.1 優先對關鍵路徑布線 41
2.5.2 查看布線報告 42
2.6 關於增量實現 43
2.7 關於ECO 44
2.7.1 什麼是ECO 44
2.7.2 ECO流程 45
2.7.3 ECO套用案例:替換ILA待測信號 46
第3章 高效設計 51
3.1 高效使用觸發器 51
3.1.1 同步復位與異步復位 51
3.1.2 觸發器的初始值 53
3.1.3 鎖存器 54
3.2 高效使用LUT 55
3.2.1 LUT用作邏輯函式發生器 55
3.2.2 LUT用作移位暫存器 59
3.2.3 LUT用作分散式RAM 61
3.3 高效使用Block RAM 63
3.3.1 Block RAM的基本結構 63
3.3.2 Block RAM的性能與功耗 65
3.4 高效使用UltraRAM 67
3.4.1 UltraRAM的基本結構 67
3.4.2 UltraRAM的讀寫操作方式 70
3.4.3 UltraRAM的實例化方式 70
3.5 高效使用DSP48E2 73
3.5.1 DSP48E2的基本結構 73
3.5.2 DSP48E2的性能與功耗 74
3.6 高效使用MMCM 76
3.6.1 MMCM的基本功能 76
3.6.2 MMCM的功耗與輸出時鐘的抖動 78
3.7 高效設計異步跨時鐘域電路 80
3.7.1 單bit異步跨時鐘域電路 80
3.7.2 多bit異步跨時鐘域電路 82
第4章 時序約束 83
4.1 管理約束 83
4.1.1 約束檔案 83
4.1.2 4種時序路徑 85
4.1.3 4個步驟完成時序約束 85
4.2 時鐘周期約束 87
4.2.1 主時鐘周期約束 87
4.2.2 生成時鐘周期約束 89
4.2.3 對同一時鐘源添加多個時鐘周期約束 91
4.2.4 調整時鐘特性約束 93
4.3 I/O延遲約束 93
4.4 時序例外路徑約束 95
4.4.1 多周期路徑約束 95
4.4.2 偽路徑約束 99
4.4.3 最大/最小延遲約束 101
4.4.4 時序例外路徑約束的指導原則 102
4.5 使用create_generated_clock 103
4.6 使用set_clock_groups 105
4.7 調試約束 108
4.7.1 了解約束的優先權 108
4.7.2 了解約束檔案的屬性和編譯順序 110
4.7.3 藉助TCE調試約束 112
4.7.4 藉助Tcl命令調試約束 113
4.8 案例分析 114
第5章 時序收斂 116
5.1 時序收斂的標準 116
5.1.1 檢查約束 116
5.1.2 檢查建立時間裕量 117
5.2 基線設計 117
5.3 分析時序違例 121
5.3.1 分析時序違例的可能原因 121
5.3.2 確定時序違例的根本原因 125
5.3.3 分析邏輯級數 128
5.3.4 分析數據路徑延遲 128
5.3.5 分析時鐘歪斜 129
5.4 解決時序違例 129
5.4.1 降低邏輯延遲 129
5.4.2 降低布線延遲 131
5.4.3 降低時鐘歪斜 134
5.4.4 降低時鐘不確定性 136
5.5 時序收斂技術 137
5.5.1 面向模組的綜合技術 137
5.5.2 邏輯級數 138
5.5.3 控制集 138
5.5.4 高扇出網線 141
5.5.5 路徑優先權 142
5.5.6 保持時間違例 143
5.5.7 實現策略 144
5.5.8 多次疊代 145
5.5.9 過約束 145
5.5.10 增量編譯 146
5.5.11 手工布局 146
5.5.12 復用布局 147
第6章 SSI器件設計 148
6.1 SSI器件設計面臨的挑戰 148
6.2 SSI器件的基本結構 150
6.2.1 SLR架構 150
6.2.2 跨die資源 152
6.3 SSI器件的設計規劃 154
6.3.1 數據流 154
6.3.2 設計層次 155
6.3.3 跨die路徑 160
6.4 SSI器件的設計分析 163
6.4.1 資源分析 163
6.4.2 時序分析 165
第7章 套用技巧 168
7.1 界面操作 168
7.1.1 快捷鍵 168
7.1.2 Dashboard按鈕 173
7.1.3 各類報告 175
7.1.4 Schematic視圖 176
7.1.5 Device視圖 179
7.2 工程管理 181
7.2.1 揭秘DCP 181
7.2.2 複製工程 183
7.2.3 複製IP 185
7.3 資源利用率報告分析 185
7.3.1 Block RAM的利用率 185
7.3.2 LUT和LUTRAM的區別 186
7.3.3 LUT的個數 187
7.3.4 report_utilization命令的功能 190
7.4 時序報告分析 192
7.4.1 生成時序報告 192
7.4.2 閱讀時序報告 194
7.5 Tcl命令套用 197
7.5.1 report_high_fanout_nets 197
7.5.2 report_design_analysis 200
7.5.3 report_qor_suggestions 203
7.5.4 report_failfast 206
7.6 其他技巧 207
7.6.1 設定多執行緒 207
7.6.2 復用Block的位置信息 208
7.6.3 獲取Package Delay 209
7.6.4 快速生成IBIS模型 210
7.6.5 使用MAX_FANOUT 211
後記 213

相關詞條

熱門詞條

聯絡我們