文章目录
前言
个人学习记录使用,以下为数字设计的基础知识点,需要逐一准备。
一、高频考点
-
时序分析基础
1 )Setup Time/Hold Time:定义、计算方法、违例原因及修复方法(增加缓冲器/优化逻辑路径)
一、Setup Time与Hold Time的定义
Setup Time(建立时间)
指在触发器时钟信号上升沿到来之前,输入数据必须保持稳定的最短时间;若数据在此时段内未稳定,可能导致采样失败或亚稳态,触发器的输出将不可预测
Hold Time(保持时间)
指在时钟上升沿到来之后,输入数据仍需保持稳定的最短时间;若数据在此阶段过早变化,同样会导致采样错误或亚稳态
二、计算公式
Setup Time计算公式:Setup Slack = Required Time − Arrival Time ,其中:
Arrival Time(数据到达时间) = Tlaunch + Tck2q + Tdp
Tlaunch: 时钟从源触发器(Launch FF)到当前触发器的延迟;
Tdp: 数据路径的组合逻辑延迟
Tck2q: 触发器内部时钟到输出的传播延迟;
Required Time(需求时间) = Tcapture + Tcycle − Tsetup − Tuncertainty
Tuncertainty: 时钟抖动等不确定性因素
Tsetup: 触发器的建立时间要求;
Tcycle: 时钟周期;
Tcapture: 时钟到捕获触发器(Capture FF)的延迟;
Hold Time计算公式: Hold Slack = Arrival Time − Required Time,其中:
Arrival Time = Tlaunch + Tck2q + Tdp(同一时钟沿的数据到达时间);
Required Time = Tcapture + Thold
Thold: 触发器的保持时间要求
三、违例原因
Setup Time违例
数据路径延迟过大:组合逻辑过长或关键路径负载过重,导致数据到达时间超过时钟周期
时钟周期过短:高频率设计下,时钟周期不足以满足数据稳定需求
Hold Time违例
数据路径延迟过小:组合逻辑过短或驱动单元速度过快,数据变化早于保持时间要求
时钟偏移(Clock Skew)正值:Capture时钟路径延迟远小于Launch时钟,导致数据过早被覆盖
四、修复方法
Setup Time违例修复
优化数据路径
缩短组合逻辑:通过逻辑优化、流水线化或增加中间触发器分割关键路径
增强驱动能力:更换大驱动单元(如LVT低阈值单元)或逻辑复制以降低扇出负载
减少路径干扰:通过插入缓冲器(其有效性取决于路径干扰对时序的影响是否超过缓冲器自身的固定延时)或解串扰优化信号完整性
调整时钟路径
增大时钟周期:降低频率以放宽时间约束(适用于非高频关键场景)
利用正时钟偏移(Positive Skew):通过延迟Capture时钟路径或提前Launch时钟路径,扩展有效采样窗口
Hold Time违例修复
增加数据路径延迟
插入延时单元:在数据路径中插入缓冲器(Buffer)或专用延时单元(Delay Cell)
降低驱动速度:更换高阈值单元(HVT)或减小单元尺寸以增加传播延时
调整时钟路径
利用负时钟偏移(Negative Skew):通过延迟Launch时钟路径或提前Capture时钟路径,延长数据保持时间
优化时钟树平衡:减少时钟网络中的缓冲器级联,确保时钟信号同步性
其他策略
异步处理:对跨时钟域路径设置多周期路径(Multicycle Path)或伪路径(False Path)约束
锁存器插入:在数据路径中插入低电平有效锁存器(Lock-up Latch),数据推迟半个时钟周期,人为延长保持时间
五、修复注意事项
Setup与Hold的权衡:优化Setup可能引入Hold违例,需通过时序分析工具(如PrimeTime)全局平衡
布局布线阶段处理:综合阶段可暂缓Hold修复,但布线后需确保Hold完全收敛,否则可能导致功能失效
工艺库选择:低阈值单元(LVT)可优化Setup但可能恶化Hold,需结合具体场景选择
2)亚稳态:产生原因(异步信号跨时钟域)、两级触发器同步原理及适用场景
一、亚稳态的产生原因
亚稳态是数字电路中因时序违例导致的触发器输出不确定状态,其主要成因包括:
异步信号跨时钟域传输
当信号跨越不同时钟域时,由于源时钟与目标时钟的相位、频率差异,可能导致目标触发器的建立时间(Tsu)或保持时间(Th)不满足。例如:
跨时钟域数据流:源时钟域的数据可能在任意时间到达目标时钟域,无法保证时序要求
异步复位/置位信号:复位信号的释放若与时钟边沿冲突,可能因恢复时间(Recovery Time)或移除时间(Removal Time)不足而引发亚稳态
- <
信号在亚稳态窗口内变化
触发器的输入信号在亚稳态窗口(Tsu-Th时间段)内发生跳变时,输出可能进入振荡或中间电平状态,无法快速稳定