本书涵盖了Vivado的四大主题:设计流程、时序约束、设计分析和Tcl脚本的使用,结合实例深入浅出地阐述了Vivado的使用方法,精心总结了Vivado在实际工程应用中的一些技巧和注意事项,既包含图形界面操作方式,也包含相应的Tcl命令。本书语言流畅,图文并茂。全书共包含405张图片、17个表格、172个Tcl脚本和39个HDL代码,同时,本书配有41个电子教学课件,为读者提供了直观而生动的资料。本书可供电子工程领域内的本科高年级学生和研究生学习参考,也可供FPGA工程师和自学者参考使用。
第1章 FPGA技术分析 / 1
1.1 FPGA内部结构分析 / 1
1.1.1 Xilinx 7系列FPGA内部结构分析 / 1
1.1.2 Xilinx UltraScale系列FPGA内部结构分析 / 18
1.2 FPGA设计流程分析 / 22
1.3 Vivado概述 / 25
1.3.1 Vivado下的FPGA设计流程 / 25
1.3.2 Vivado的两种工作模式 / 26
1.3.3 Vivado的5个特征 / 30
参考文献 / 31
第2章 设计综合 / 32
2.1 常用综合选项的设置 / 32
2.1.1 -flatten_hierarchy对综合结果的影响 / 32
2.1.2 -fsm_extraction对状态机编码方式的影响 / 35
2.1.3 -keep_equivalent_registers的含义 / 36
2.1.4 -resource_sharing对算术运算的影响 / 38
2.1.5 -control_set_opt_threshold对触发器控制集的影响 / 38
2.1.6 -no_lc对查找表资源的影响 / 40
2.1.7 -shreg_min_size对移位寄存器的影响 / 41
2.2 合理使用综合属性 / 43
2.2.1 async_reg在异步跨时钟域场合的应用 / 43
2.2.2 max_fanout对高扇出信号的影响 / 44
2.2.3 ram_style和rom_style对存储性能的影响 / 46
2.2.4 use_dsp48在实现加法运算时的作用 / 48
2.3 out-of-context(OOC)综合模式 / 50
2.3.1 Project模式下使用OOC / 50
2.3.2 Non-Project模式下使用OOC / 54
2.4 综合后的设计分析 / 54
2.4.1 时钟网络分析 / 54
2.4.2 跨时钟域路径分析 / 56
2.4.3 时序分析 / 60
2.4.4 资源利用率分析 / 72
2.4.5 扇出分析 / 73
2.4.6 触发器控制集分析 / 75
参考文献 / 75
第3章 设计实现 / 76
3.1 理解实现策略 / 76
3.1.1 Project模式下应用实现策略 / 76
3.1.2 Non-Project模式下应用实现策略 / 80
3.2 理解物理优化 / 81
3.3 增量实现 / 82
3.3.1 Project模式下应用增量实现 / 82
3.3.2 Non-Project模式下应用增量实现 / 87
3.4 实现后的设计分析 / 88
3.4.1 资源利用率分析 / 88
3.4.2 时序分析 / 88
3.5 生成配置文件 / 90
3.6 下载配置文件 / 93
参考文献 / 99
第4章 设计验证 / 100
4.1 行为级仿真 / 100
4.1.1 基于Vivado Simulator的行为级仿真 / 100
4.1.2 基于ModelSim/QuestaSim的行为级仿真 / 111
4.2 实现后的时序仿真 / 115
4.3 使用VLA(Vivado Logic Analyzer) / 118
4.3.1 使用ILA(Integrated Logic Analyzer) / 118
4.3.2 使用VIO(Virtual Input/Output) / 126
4.3.3 VLA中的数据分析 / 128
4.4 使用add_probe / 133
参考文献 / 134
第5章 IP的管理 / 135
5.1 定制IP / 135
5.1.1 在Vivado工程中定制IP / 135
5.1.2 在Manage IP中定制IP / 139
5.2 IP的两种生成文件形式:xci和xcix / 144
5.3 对IP的几个重要操作 / 148
5.3.1 IP的综合 / 148
5.3.2 IP的仿真 / 150
5.3.3 IP的更新 / 151
5.3.4 IP输出文件的编辑 / 155
5.4 IP的属性与状态 / 156
5.5 IP的约束 / 159
5.6 封装IP / 164
5.6.1 通过Vivado工程封装用户代码 / 164
5.6.2 通过指定目录封装用户代码 / 177
参考文献 / 178
第6章 约束的管理 / 179
6.1 基本时序理论 / 179
6.2 两类基本约束 / 180
6.2.1 时钟周期约束 / 180
6.2.2 引脚分配 / 201
6.3 两种时序例外 / 210
6.3.1 多周期路径约束 / 210
6.3.2 伪路径约束 / 214
6.4 从UCF到XDC / 217
6.4.1 UCF与XDC的基本对应关系 / 217
6.4.2 理解层次标识符在UCF和XDC中的区别 / 219
6.5 时序约束编辑辅助工具 / 220
6.5.1 时序约束编辑器 / 220
6.5.2 时序约束向导 / 223
6.6 关于约束文件 / 224
参考文献 / 226
第7章 Tcl在Vivado中的应用 / 227
7.1 Vivado对Tcl的支持 / 227
7.2 Vivado中Tcl命令的对象及属性 / 232
7.2.1 文件对象及属性 / 232
7.2.2 网表对象及属性 / 234
7.3 Tcl命令与网表视图的交互使用 / 241
7.4 典型应用 / 242
7.4.1 流程管理 / 242
7.4.2 定制报告 / 246
7.4.3 网表编辑 / 249
7.5 其他应用 / 253
参考文献 / 256
猜您喜欢
推荐内容
开源项目推荐 更多
热门活动
热门器件
用户搜过
随便看看
热门下载
热门文章
热门标签
评论