前言
前面通过《Xilinx FPGA/Vivado开发教程》第一讲内容,简单介绍了Vivado设计套件,这为由ISE开发环境转向Vivado的开发者提供了一个参考。具体用哪种开发平台并不重要,用哪种硬件描述语言(HDL)也不是很重要。设计思想+技术手段+逻辑设计,足以应付大部分开发场景。
信号处理+高速接口,是FPGA开发中非常重要的两部分,包含的内容十分丰富,掌握其中的一个点,足以找到一份工作。若均擅长,是全能型人才,评高工和技术专家有望。
今天主要介绍FPGA开发中的具体细节:时序分析中的基本概念和术语。非常基础,但很重要。
Xilinx FPGA Vivado开发教程
02
第二讲
时序分析中的基本概念和术语
依然结合高亚军老师的PPT,进行梳理。
静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会根据特定的时序模型进行分析,给出正确的时序报告。
进行静态时序分析,主要目的就是为了提高系统工作主频以及增加系统的稳定性。对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。
在文末的参考文献中,为大家提供可参考的资料。
主要内容:launch edge,capture edge,timing path,data arrival time,data required time,setup slack和hold slack。
首先来看,launch edge,capture edge。
在RTL设计中,数据在寄存器之间通过wire进行传递,在进行时序分析时,考虑两个寄存器之间的时钟约束。
launch edge:数据从源寄存器输出的起点时钟边沿,是静态时序分析的起点。
capture edge:数据在目的寄存器被捕获的时钟边沿。
四种时序路径:分别用红线、蓝线、黄线和绿线表示输入端到内部寄存器单元路径、寄存器之间路径、寄存器到输出端路径以及从输入端到输出端路径。
再看时序路径中,什么是源时钟路径、数据路径和目的时钟路径,如下图所示。
数据到达时间:
输入数据在有效时钟沿后到达所需要的时间。主要分为三部分:时钟到达寄存器时间(Tclka),寄存器输出延时(Tco)和数据传输延时(Tdata)。