1 .FPGA设计过程中所遇到的路径有输入到触发器,触发器到触发器,触发器到输出,例如以下图所看到的:
这些路径与输入延时输出延时,建立和保持时序有关。
2. 应用背景
静态时序分析简称STA,它是一种穷尽的分析方法。它依照同步电路设计的要求。依据电路网表的拓扑结构,计算并检查电路中每个DFF(触发器)的建立和保持时间以及其它基于路径的时延要求是否满足。STA作为FPGA设计的主要验证手段之中的一个,不须要设计者编写測试向量,由软件自己主动完毕分析,验证时间大大缩短,測试覆盖率可达100%。静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会依据特定的时序模型进行分析,给出正确是时序报告。进行静态时序分析。主要目的就是为了提高系统工作主频以及添加系统的稳定性。对非常多数字电路设计来说,提高工作频率非常重要,由于高工作频率意味着高处理能力。通过附加约束能够控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时。从而提高工作频率。
3. 理论分析
3.1 静态时序分析的理论基础知识
在进行正确的时序分析前。我们必须具备主要的静态时序的基本知识点,不然看着编译器给出的时序分析报告宛如天书。如图3.1所看到的,为libero软件给出的寄存器到寄存器模型的时序分析报告的截取。接下来我们会弄清楚每一个栏目的数据变量的含义。以及计算方法。
图3.1 libero静态时序分析报告
3.1.1 固定參数launch edge、latch edge、Tsu、Th、Tco概念
1. launch edge 时序分析起点(launch edge):第一级寄存器数据变化的时钟边沿,也是静态时序分析的起点。
2. latch edge 时序分析终点(latch edge):数据锁存的时钟边沿,也是静态时序分析的终点。
3. Clock Setup Time (Tsu)
建立时间(Tsu):是指在时钟沿到来之前数据从不稳定到稳定所需的时间,假设建立的时间不满足要求那么数据将不能在这个时钟上升沿被稳定的打入触发器。如图3.2所看到的:
图3.2 建立时间图解
4. Clock Hold Time (Th)
保持时间(Th):是指数据稳定后保持的时间。假设保持时间不满足要求那么数据相同也不能被稳定的打入触发器。保持时间示意图如图3.3所看到的:
图3.3 保持时间图解
5. Clock-to-Output Delay(tco)
数据输出延时(Tco):这个时间指的是当时钟有效沿变化后,数据从输入端到输出端的最小时间间隔。
3.1.2 Clock skew
时钟偏斜(clock skew):是指一个时钟源到达两个不同寄存器时钟端的时间偏移。如图3.4所看到的:
图3.4 时钟偏斜
时钟偏斜计算公式例如以下:
Tskew = Tclk2 - Tclk1 (公式3-1)
3.1.3 Data Arrival Time
数据到达时间(Data Arrival Time):输入数据在有效时钟沿后到达所须要的时间。
主要分为三部分:时钟到达寄存器时间(Tclk1),寄存器输出延时(Tco)和传输数据延时(Tdata),如图3.5所看到的
图3.5 数据到达时间
数据到达时间计算公式例如以下:
Data Arrival Time = Launch edge + Tclk1 +Tco + Tdata (公式3-2)
3.1.4 Clock Arrival Time
时钟到达时间(Clock Arrival Time):时钟从latch边沿到达锁存寄存器时钟输入端所消耗的时间为时钟到达时间,如图3.6所看到的
图3.6 时钟到达时间
时钟到达时间计算公式例如以下:
Clock Arrival Time = Lacth edge + Tclk2 (公式3-3)
3.1.5 Data Required Time(setup/hold)
数据需求时间(Data Required Time):