FPGA设计时序分析一、时序路径

文章介绍了时序路径的概念,包括其构成、分类,以及在FPGA设计中的应用。重点讨论了数据捕获的发送沿和捕获沿,以及在不同环境条件下的时序分析,如Fastcorner和Slowcorner。此外,还提到了Vivado工具的时序报告在设计验证中的作用。
摘要由CSDN通过智能技术生成

目录

一、前言

二、时序路径

2.1 时序路径构成

2.2 时序路径分类

2.3 数据捕获

2.4 Fast corner/Slow corner

2.5 Vivado时序报告

三、参考资料

一、前言

    时序路径字面容易简单地理解为时钟路径,事实时钟存在的意义是为了数据的处理、传输,因此严格意义上的时序路径是指在时钟控制下的时钟路径与数据路径。

二、时序路径

2.1 时序路径构成

    关键词:源时钟路径,数据路径,目的时钟路径

    以数据在两个寄存器间的传输连接为例,典型的时序路径包含3个部分:源时钟路径,数据路径,目的时钟路径,源时钟路径和目的时钟路径的时钟可相同,也可不同。

2.2 时序路径分类

    下图为FPGA芯片与外围电路连接的简略图,中间虚线框内为FPGA器件,左右两侧的开发板器件分别为输入到FPG芯片和FPGA芯片输出到外围器件。FPGA芯片通过DIN和DOUT口与外围电路连接。

    将两个寄存器REG A和REG B为界限,时序路径可分为4类:

路径1:外部器件到FPGA内部的寄存器单元REG A,

路径2:输入端口DIN直连的寄存器REG A到输出端口DOUT直连的寄存器REG B

路径3:输入寄存器REG A到输出寄存器REG B

路径4:芯片输入端口DIN到输出端口DOUT间的路径

4类时序路径组成分析

当路径1的起点非开发板的输出Q,而是以DIN为起点时,路径1是不存在源时钟路径。同理路径3的终点非外部开发板的输入端口D,而是以DOUT为终点时,路径3不存在目的时钟路径。对于路径4,因为起点和终点分别为DIN,DOUT,路径上不存在寄存器,输入输出的时钟可为虚拟时钟,也可以是设计时钟。

虚拟时钟:用于描述数据引脚上的外部时钟信号,约束时可不指定实际端口,该时钟不会存在于FPGA内部,为了方便时序分析而存在。

2.3 数据捕获

关键词:发送沿Lanch edge,捕获沿Capture edge

    以边沿触发的触发器为例,REG A的Q只有在起点处的源时钟处于上升沿或下降沿时才会输出D的数据,传输到REG B的输入端口D。因此,该时钟边沿即为发送沿。同理,对于REG B的输入D,只有在目的时钟源处于上升沿或触发沿时,才能输入到触发器REG B中,目的时钟的时钟信号边沿称为捕获沿,即捕获到发送沿发送来的数据。发送沿和捕获沿相差一个时钟周期

在10ns出,clk0将D0输入发送出,即Q0的值为1,同时Q0的值传输到D1,捕获时钟clk1在20ns处将1捕获,输出到Q1,即经过一个时钟周期20ns,D0传输到了Q1。

2.4 Fast corner/Slow corner

    时序分析还需考虑器件在不同环境条件下的传输和处理时延不同,将这些影响时延的外在因素统一考虑,分为两种极端场景,Slow corner和Fast corner,两者可理解为最差的条件和最好的条件。每种场景在组合最大时延和最小时延,共存在四种情况。

Slow corner+最大时延

Slow corner+最小时延

Fast corner+最大时延

Fast corner+最小时延

2.5 Vivado时序报告

在Report Timing Summary中,Design Timing Summary中可以找到设计中setup和hold的最差时序路径,setup和hold都大于0,时序不违例,该设计中无recovery、removal路径。

设计中只对clk_100M设置了时钟约束

clk_100M为手动设置的约束,其余时钟为时钟IP生成的,配置完成后会自动生成时钟约束,最终来源也是clk_100M.

三、参考资料

用户手册《ug906-vivado-design-analysis-zh-cn-2022.2.pdf》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值