天天看点

FPGA时序约束—TimeQuest基础

时序约束的目的是:规范设计的时序行为,表达设计者所期望满足的时序条件,指导综合和布局布线阶段的优化算法等,作用:提高系统设计的fmax、得到正确的时序分析报告

一、       TimeQuest分析流程

FPGA时序约束—TimeQuest基础

二、       TimeQuest分析步骤

1.      在工程编译之前,先要选择时序分析工具,这里选择TimeQuest工具:Setting/Timing Analysis Setting/Use TimeQuest Timing Analyzer during compilation选项

FPGA时序约束—TimeQuest基础

2.      加入SDC文件,可以先运行TimeQuest编写SDC文件或者先建立一个空的SDC文件(按照个人习惯),也可以加入TCL文件,这里和SDC文件是等价的,当然用TCL工具会更加方便。

FPGA时序约束—TimeQuest基础

3.      开始编译QuartusII的整个工程

4.      启动TimeQuest工具

此图为TimeQuest的开始界面,

1)      Generate timing netlist :右键Start产生时序网表

2)      Read in SDC File :读取在之前加入SDC文件,便于在SDC文件中在继续加入其他的约束

3)      打开SDC文件就可以加入自己要加的约束了

FPGA时序约束—TimeQuest基础
FPGA时序约束—TimeQuest基础
FPGA时序约束—TimeQuest基础
FPGA时序约束—TimeQuest基础
FPGA时序约束—TimeQuest基础

4)      在Constraints里有一些加入约束的工具,可以一步一步的加入

当然,这里有个先后时序,有的人经验比较丰富的,先建立SDC文件,然后再Timequest中看分析结果,或进一步优化约束,作为入门可以在TimeQuest中加入约束,然后再编译再查看分析结果。

5) 查看分析结果

在Report是中查看Setup Hold等分析结果

根据报告分析时序违规路径,具体的SDC文件编写和时序分析在后面的博文中会陆续讲到

继续阅读