时序基本理论
Tags
Last edited by
AI summary
Last edited time
Dec 26, 2024 02:13 PM
1 时序是什么?1.1 时序分析1.1.1 时序分析的分类1.1.2 静态时序分析原理1.1.2.1 节点电路1.1.2.2 节点2数字电路设计静态时序分析2.1 亚稳态2.2 静态时序稳定判断2.3 延迟2.4 时序分析经典模型2.5 同步电路2.6 时序分析工具2.6.1 VIVADO下最大频率计算2.6.2 时序解决
1 时序是什么?
数字电路设计中时序是决定电路运行是否稳定的关键性指标,任何电路设计都必须满足时序,所谓时序就是电路运行状态中,随着时间变化,2个或者2个以上信号之间所表现出来的一种关系,而他们所表现出的关系只有2种:
逻辑关系:信号之间值的变化关系
分析信号之间逻辑关系,就是分析信号之间逻辑值的变化是否符合我们的预期,即电路逻辑。
相位关系:信号之间的延迟关系
分析相位关系,就是分析信号之间延迟变化情况,如果延迟对我们的设计没有太大影像,我们不需要岁电路做任何改变,如果有影响,影响到电路运行的稳定性,我们就需要对电路做改变。
我们在电路设计中一方面保证逻辑是正确的,还要观测延迟是够对电路设计有影响。
1.1 时序分析
时序在电路设计中是保证电路稳定性的前提,因此时序分析对于电路设计是我们必须的技能,只要是我们通过某种方式方法,分析信号之间逻辑和相位关系变化的过程就是时序分析。
在时序分析中,最常用,也是最基本的时序分析方法就是图形化分析法,就是用图形把信号之间的关系直观的表示出来,比如时序图,TP图,自定义图形,不管什么用样图形表达时序,只要有效可行的都可以,其中时序图是我们任何进行时序分析惯用的图形。
时序图作为我们电路设计中惯用的时序分析方法,它比较直观,对于时序比较复杂的情况下,图形的表示比较繁琐。
在现在的时序分析中,往往我们是借助工具绘制时序图,比如modsim。
1.1.1 时序分析的分类
数字电路设计时序分析按照应用算法可以分为2类,动态时序分析和静态时序分析,并且这2种时序分析称为了数字电路设计,任何工具所具备2种方式。
- 动态时序
在时间轴上表现信号之间时序(逻辑和相位关系)的一种方式,借助工具对电路设计进行进行模拟信号之间的时序,换句话说就是我们所谓的仿真,常见仿真共计,modelsim ,QUESTA,ACTIVE-HDL。
通过仿真可以观测是信号之相位和逻辑关系,要分析相位关系需要用到时序仿真。由于是模拟的时序,相位变化有误差,并不能完全的暴漏时序问题,所以这种时序分析适合用来分析逻辑关系,不适合用来分析相位关系。
- 静态时序分析
静态时序分析是通过穷尽的节点算法提取所有路劲,通过计算延迟,从而分析时序,用来分析相位关系,最后判断是否对电路有影响。
静态时序分析在实际中通过时序分析工具帮我们进行分析,分析工具如timequest ,时序编辑器。
1.1.2 静态时序分析原理
实际应用中动态时序分析就是仿真,这里我们重点讲解静态时序分析,静态时序分析以节点为基本单元,它把整个电路拆分为诸多个节点,通过估算各个节点延迟,达到分析相位关系的目的。

1.1.2.1 节点电路
静态时序分析把任何电路都看做一个电路系统,下来我们对各种电路进行分析

对于组合电路,它的系统函数可以表示如下:
R(t) =CL(S(t-tpd))
R(t):系统响应输出
S(t):系统输入激励
Tpd:系统延迟
CL:电路逻辑函数
t:时间轴上的连续采样点
对于时序电路,它的系统函数可以表示如下:
R(t) =SL(S(t-tpd),t)
R(t):系统响应输出
S(t):系统输入激励
Tpd:系统延迟
CL:电路逻辑函数
t:时间轴上的离散采样点
数字电路的核心是组合电路,时序电路是对组合电路的值 的采样,在电路系统中我们可以电路系统抽象为自动机,我们把组合电路可以抽象的表示为自动机。
R(t) =FA(S(t-tpd)) ∈ { 有限个符号},(有限自动机)
R(t) =FA(S(t-tpd)) ∈ { 无限个符号},(无限自动机)
在实际电路中因为电路系统输出的数为有限个,可以说任何组合电路为有限自动机。
1.1.2.2 节点
节点是静态时序分析的基本单元,由节点电路构成,分为开电路,闭节点,源节点。

以上2种节点如果输出信号直接到达输出顶层叫做源节点。
2数字电路设计静态时序分析
数字电路设计静态时序分析主要研究的信号之间延迟是否对电路稳定性有影响,在实际电路中相位的变化对电路稳定性的影响体现在触发器的亚稳态,换句话说如果延迟造成信号之间相位关系发生变化,造成触发器的亚稳态,就是会出现电路不稳定的情况,所以数字电路静态时序分析主要围绕亚稳态进行研究。
2.1 亚稳态
在数字电路设计静态时序分析中静态时序问题体现在亚稳态中,亚稳态是触发器本身的一个特性。

当触发器的信号在tmin时间内发生变化,触发器内部电压不稳定,我们把触发器这种状态叫做亚稳态。并且这种状态还会传播给下一个触发器,时间证明一般传播不超过2级。

2.2 静态时序稳定判断

2.3 延迟
数字电路设计的本质起始就是满足所有触发器的建立保持时间,当延迟造成信号之间相位关系变化,有可能出现亚稳态,因此在电路中延迟是造成亚稳态的核心因素,如上图。
在数字电路设计中延迟有2种:
惯性延迟:触发器输出延迟,任何触发器数据输出是有延迟的,我们用TCo表示
物理延迟:在FPGA中,线延迟,lut延迟,有限判决链延迟,进位链延迟,等所有延迟都叫做物理延迟,用Tdata.
2.4 时序分析经典模型


2.5 同步电路
静态时序分析通过计算延迟,比较数据信号与时钟信号之间的关系,计算余读,从而判断亚稳态是否存在,在静态时序分析的时候如果2个节点之间的时钟是异步时钟,相位关系也很难准确的计算,因此所有的静态时序分析都是对同步电路有效,异步电路理论上来说是无法分析的。
对于同步电路和异步电路的划分主要看值传递情况,
异步电路:组合电路,非相关时钟域电路
同步电路:相关时钟域电路
F2(t)= M/N*F1(t-Φ)
2.6 时序分析工具
任何时序分析都是需要时序分析工具完成,由于每个厂家FPGA内部的元参数信息只有厂商最清楚的,所以在估算延迟的时候需要厂商提供专用的工具,因此对于FPGA开发,时序分析工具都是由厂家提供。
在利用工具进行时序分析的时候,我们需要编写输入文件,动态仿真需要构建tesetbench,对于静态时序分析要编写时序约束文件。
时序约束有4种
时钟约束:约束电路系统中的时钟的周期
多周期约束:一般默认采样时间间隔为时钟的一个周期,如果设计中存在多个周期采样,需要约束
服务路径约束:如果想忽略时序分析,则需要约束
偏移约束:叫做IO约束,约束FPGA引脚上信号的外部延迟
2.6.1 VIVADO下最大频率计算


Fmax = 1/(20ns - 6.352ns)
2.6.2 时序解决
- 逻辑分割法
- 优化
- 设计优化
- 代码优化
Loading...