目录
一、时序约束的步骤
上一章了解了时序分析和约束的很多基本概念(FPGA时序分析与时序约束(一)),只需要去理解如何进行时序分析即可,而我们只需要对综合工具提出时序约束的要求,综合工具就会对这些路径进行计算。而时序约束可以分为四个主要步骤进行:
1.时钟约束(Create Clock):主时钟、虚拟时钟、衍生时钟;
2.输入/输出接口约束(Input/Output Delays,I/O约束):系统同步接口、源同步接口;
3.时钟分组和跨时钟约束(Clock Groups and CDC):异步;
4.时序例外约束(Timing Exceptions):多周期路径、虚假路径。
而一般时序分析会涉及三种情况:
最好的条件(Best Case):速度最快的情况;
最坏的条件(Worst Case):速度最慢的情况;
典型的条件(Typical Case):速度介于最快和最慢之间。
这三种情况分别对应如下细节:
BCF(Best Case):fast process, lowest temperature, high voltage;
WCS (Worst Case):slow process, high temperature, lowest voltage;
TYP(Typical Case):typical process, nominal temperature, nominal voltage.
其中芯片工艺(process)、电压(voltage)、温度(temperature) 共同组成了PVT组合,时序分析工具会根据仿真需求使用不同的PVT组合用于STA分析。
芯片的工艺角(Process corner)分为快速工艺角(fast corner)、慢速工艺角(slow corner)、典型工艺角(typical corner)。时序分析工具通过Worst corner 保证建立时间的时序,通过Best corner来保证保持时间的时序。由于一般情况下设计以建立时间违例为主,所以时序分析工具默认使用slow corner。
二、时序网表和路径
2.1 时序网表
时序网表包含设计的综合节点和连接,时序分析工具需要网表来执行时序分析。而时序网表将设计单元划分成单元、管脚、网络和端口来进行延迟的测量。
- Cell : FPGA中的基本结构单元,包含查找表、寄存器、DSP、I/O单元等;
- Pin : Cell的输入输出端口(这里的Pins不包括器件的输入输出引脚);
- Net : 两个或多个互连组件的集合;
- Port : 顶层逻辑的输入输出端口,对应已经分配的器件引脚。
2.2 时序路径
时序分析工具对设计中确定的所有时序路径的时序性能进行测量,时序路径分为四种:
边沿路径 (Edge paths) —从端口到管脚,从管脚到管脚以及从管脚到端口的连接; 时钟路径(Clock paths)—从器件端口或内部生成的时钟管脚到寄存器的时钟管脚的连接; 数据路径(Data paths)—从顺序单元的端口或数据输出管脚到另一个顺序单元的端口或数据输入管脚的连接; 异步路径(Asynchronous paths)—从另一个顺序单元(例如异步复位或异步清除)的异步管脚或端口的连接。

三、时序约束的方式
到现在位置,时序约束的概念、步骤、顺序等都概念都有所了解了,那么到底怎么样进行时序约束呢?时序约束的方式主要有两种:
1.通过FPGA开发工具进行约束,Intel的是Timing Analyzer,Xilinx的是Vavado
2.通过Tcl语言手动编写约束脚本
三、时钟约束
3.1 主时钟约束
主时钟通常是FPGA器件外部的板级时钟(如晶振、数据传输的同步时钟等)或FPGA的高速收发器输出数据的同步恢复时钟信号等。
通过create_clock命令可对主时钟进行约束定义:
create_clock -name<cl
FPGA时序约束详解:步骤、方式与关键要素

最低0.47元/天 解锁文章
5987

被折叠的 条评论
为什么被折叠?



