1.建立保持时间
第一类时序路径:从设备A的时钟到FPGA的第一级寄存器的数据输入端口
第二类时序路径:两个同步原件之间的路径,比如rega时钟端口到regb的数据端口
第三类时序路径:最后一级寄存器时钟端口到设备B数据端口的路径
第四类时序路径:端口到端口的路径(纯粹的组合逻辑,输入端口的起点到输出端口的终点)
源端时序路径、数据路径、目的端时序路径
数据到达时间反映的是数据在发送沿发送之后经过多长时间会到达接收沿的接收寄存器端口。
时钟到达时间指的是捕获寄存器(目的端寄存器)的时钟
建立的不确定时间比如抖动
对于建立时间的数据到达时间指的是当前数据的到达时间
而对于保持时间的数据到达时间指的是下一个数据的到达时间
If Slack为正满足时序约束
Else 不满足
如果建立时间不满足,则考虑数据延迟过大;
如果保持时间不满足,则考虑时钟延迟过大。
Tdata=Tlogic+Tnet(逻辑延迟{代码风格},布线延迟{布线})
Ts≥Tco+Tdata+Tsu(这三个参数决定了系统的最高频率)
VIVADO设计技巧
Xdc:时序约束、物理约束
用户自己设计的文件管理:src, sim, xdc
采用Manage IP方式对IP进行管理(方便后续应用)
1.Reset all IPs
2.Upgrade all IPs
3.Regenerate all IPs
Proc reset_ips {myips}{
Foreach ip $myips{
reset_target all $ip
Delete_ip_run $ip
}
}
获取约束编译文件顺序Tcl:report_compile_order -constraints
仿真report_compile_order -used_in simulation
综合report_compile_order -used_in synthesis
保存捕获的ila数据
write_hw_ila_data my_hw_ila_data_file.zip [upload_hw_ila_data hw_ila_1]
读取捕获到的ILA数据
displap_hw_ila_data [read_hw_ila_data my_hw_ila_data_file.zip]