01
Vivado概述
发展历史、与传统ISE对比、核心特性、安装与许可配置
基础工具
02
工程创建与管理
RTL工程创建、IP集成工程创建、工程设置与管理、版本控制集成
工程管理
03
RTL设计与综合
HDL代码编写规范、综合策略设置、综合报告解读、优化技巧
RTL综合
04
仿真验证基础
行为仿真、后仿真、Testbench编写、Vivado Simulator使用
仿真验证
05
约束文件入门
XDC文件基础、时序约束概念、物理约束概念、约束文件管理
约束XDC
06
主时钟约束
create_clock命令详解、时钟源定义、周期与占空比、多时钟定义
时钟主时钟
07
生成时钟约束
create_generated_clock命令、分频与倍频、相位关系、时钟源选择
生成时钟分频
08
输入延迟约束
set_input_delay命令、系统同步与源同步、最大最小延迟、虚拟时钟
输入延迟约束
09
输出延迟约束
set_output_delay命令、输出路径分析、外部延迟建模、约束验证
输出延迟约束
10
异步时钟约束
set_clock_groups命令、异步时钟域、false_path与max_delay、CDC同步器
异步CDC
11
时序例外约束
set_false_path、set_multicycle_path、set_max/min_delay、约束优先级
例外时序
12
物理约束基础
I/O引脚分配、Pblock约束、SLR约束、布局布线约束
物理引脚
13
时序分析基础
建立时间与保持时间、时序路径类型、Setup/Hold分析、时序报告
时序分析
14
时序报告深入
report_timing_summary、report_timing、clock_interaction、过滤技巧
报告时序
15
约束冲突类型
时钟冲突、路径冲突、约束覆盖冲突、物理约束冲突、优先级冲突
冲突分类
16
时钟约束冲突
多时钟源冲突、生成时钟定义冲突、时钟组冲突、时钟域交叉冲突
时钟冲突
17
路径约束冲突
输入输出延迟冲突、例外约束冲突、多周期路径冲突、最大最小延迟冲突
路径冲突
18
物理约束冲突
引脚分配冲突、Pblock重叠冲突、SLR分配冲突、布局约束冲突
物理冲突
19
约束优先级与覆盖
优先级规则、override与append、文件顺序影响、约束合并机制
优先级覆盖
20
约束冲突诊断工具
report_compile_order、report_constraints、check_timing、GUI查看
诊断工具
21
Tcl脚本基础
Tcl语法入门、变量与列表、控制流、过程定义、文件操作
Tcl脚本
22
Vivado Tcl命令
get_ports、get_clocks、get_cells、属性查询与修改、约束生成脚本
Tcl命令
23
自动化约束生成
基于设计的约束生成、参数化约束脚本、批量约束处理、约束模板库
自动化约束
24
约束验证与调试
约束覆盖率分析、时序收敛性检查、冲突调试流程、常见错误修复
验证调试
25
多时钟域设计约束
CDC设计原则、同步器约束、异步FIFO约束、多时钟域时序分析
多时钟CDC
26
高速接口约束
DDR接口约束、SerDes接口约束、源同步接口约束、时序预算分配
高速接口
27
部分可重构约束
PR工程约束、PR区域约束、PR时序约束、PR物理约束
可重构PR
28
约束管理最佳实践
文件组织、命名规范、注释规范、版本管理、团队协作
管理规范
29
案例实战一:单时钟域
单时钟域设计约束与冲突解决、从零到收敛的完整流程
实战单时钟
30
案例实战二:多时钟域
多时钟域复杂设计约束与冲突解决、综合项目实战演练
实战多时钟