FPGA时序分析和时序约束---基础篇

时序分析需了解:

        了解FPGA的基本组成结构,因为要分析数据和时钟的路径,就要清楚其在FPGA内部是怎么样传输的。从FPGA的I/O端口输入,经过多个内部可编程逻辑单元,其中包括组合逻辑和时序逻辑,不同单元之间的连线,最后又输出到FPGA的I/O端口。整条路径的延迟是多少,各个模块/单元的延迟是多少。

时序分析目的:

        通过分析FPGA设计中各个寄存器之间的数据和时钟的传输路径,来分析数据延迟和时钟延迟的关系,保证整个系统的所有寄存器都能正确的寄存数据。

        其中,数据和时钟的传输路径由EDA软件,通过针对特定的器件布局布线得到的。

时序约束作用:

        1. 告知EDA软件本设计需要达到的时序指标,然后EDA软件会根据时序约束的各个参数来优化布局布线,以达到约束的要求。

        2. 协助EDA软件分析时序路径,以产生相应的时序报告。在IC的设计中,时序分析可能由设计师自己分析,但是在FPGA的设计中,时序分析是由EDA软件分析的。

时序约束工具-Timequest:

        Timequest是基于某个逻辑设计在特定器件上经过布局布线之后的网表,该网表包含了设计中每一个逻辑在该器件的什么资源上实现,以及资源在该器件的具体位置,以及信号从一个节点到另一个节点的具体延迟时间。

        若用户未进行时序约束,软件会自动对分析出的是时钟加入约束,这个约束会按照最大的可能约束。软件会计算最高频率的时候,是根据最坏路径的建立时间余量来计算。

时序分析基本模型

        整条路径可以完全映射搭配到FPGA的基本单元。需要经过内部互联线延迟、组合逻辑延迟、时序逻辑延迟等。

        当中间的门有多级时,例如多个if, else if,.... else等。会导致c_reg_D的数据很晚到达,不满足时钟上升沿的建立时间。同时还需要考虑时钟的延迟,pad的延迟等。

以上内容,主要思想来源于小梅哥的视频,讲的很通俗易懂。

时序波形图及概念截图如下:

 

       通过软件进行时序分析,让其分析的是基于某个逻辑设计,在特定的器件上经过布局布线之后的网表。该器件需要具体到特定型号的特定速度等级。该网表包含了每一个逻辑具体在器件上的什么资源实现,在器件内的具体位置,以及信号从一个节点传输到下一个节点的具体延迟时间。

        在quartus的TimeQuest工具下还情况了不同温度环境下的分析,包括在内核供电电压1.2V,高温80,低温0°慢速和快速3中环境分析。温度越高,芯片内部的信号传输速度越慢,因为温度会影响改变硅片的材料、泄露电流和电子移动能力等特性。工作在温度0slow环境下,是因为晶体管阈值电压会随温度降低为降低,出现逆温现象。实际上时序最差的情况往往是低温还不是高温状态下。但是在低温情况下,并不是所有的特性都会变慢,还是会有一些地方信号传输会变快,一旦传输速度变快,这个时候就要考虑从--保持时间余量。

为什么时序约束以及分析可以参考:

小梅哥FPGA时序分析笔记(三)时钟约束真重要——事实说话-面包板社区 (eet-china.com)

具体TimeQuest操作及GUI上的概念参考:

(1条消息) quartus时序分析文档理解与翻译(4)——创建IO约束_pad_nuannuan的专栏-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值